![Как преобразовать смонтированную файловую систему между кодовыми страницами?](https://rvso.com/image/1303448/%D0%9A%D0%B0%D0%BA%20%D0%BF%D1%80%D0%B5%D0%BE%D0%B1%D1%80%D0%B0%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D1%8C%20%D1%81%D0%BC%D0%BE%D0%BD%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D1%83%D1%8E%20%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2%D1%83%D1%8E%20%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D1%83%20%D0%BC%D0%B5%D0%B6%D0%B4%D1%83%20%D0%BA%D0%BE%D0%B4%D0%BE%D0%B2%D1%8B%D0%BC%D0%B8%20%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0%D0%BC%D0%B8%3F.png)
У меня есть внешний диск, отформатированный в ext3
(в основном), который ранее был подключен к устройству Linksys NLSU2 NAS. Теперь NSLU2 сломался, и мне пришлось бороться с восстановлением файлов на диске, поскольку его имена файлов используют кодовую страницу Windows ( cp850
). Я могу получить доступ к диску через инструмент под названием "ext2fsd" в Windows, где у меня есть возможность выбрать правильную кодовую страницу. Однако мой компьютер с Windows довольно старый, и инструмент ext2fsd время от времени дает сбои.
Когда я пытаюсь смонтировать диск в Ubuntu, я получаю сломанные имена файлов, потому что кодовая страница нестандартная, я полагаю. Возможно ли:
- Смонтировать диск в Ubuntu как ext3 с кодовой страницей, используемой на диске?
- Конвертироватькодовую страницу на стандартную, подходящую для ext3?
решение1
Я бы попробовал исправить имена файлов с помощью convmv
- не уверен, доступно ли это для Windows, в Ubuntu это есть в репозиториях. Это инструмент, который я использовал именно для этого случая использования. Из егоруководство:
convmv предназначен для преобразования одного имени файла, дерева каталогов и содержащихся в нем файлов или целой файловой системы в другую кодировку. Он преобразует только имена файлов, а не содержимое файлов. Особенностью convmv является то, что он также заботится о символических ссылках, а также преобразует указатель цели символической ссылки в случае, если цель символической ссылки также преобразуется.
Все это очень удобно, когда нужно перейти со старых 8-битных локалей на локали UTF-8. Также можно преобразовать в UTF-8 каталоги, которые уже частично закодированы в UTF-8. convmv может определить, закодированы ли определенные файлы в UTF-8, и будет пропускать их по умолчанию. Чтобы отключить эту интеллектуальность, используйте переключатель --nosmart.