
В старые времена smbfs я использовал опции codepage и iocharset, но cifs не поддерживает codepage. Что я могу сделать?
решение1
Полагаю, проблема в том, что в именах файлов на общем ресурсе NTFS отображаются странные символы.
СогласноЧасто задаваемые вопросы о NTFS, команда mount поддерживает параметр iocharset для NTFS. Вам следует обратить особое внимание на раздел 4 и попробовать команды mount, приведенные там.
В другой статье:smbfs & cifs; акцентированные символы; решеноАвтор предлагает три варианта установки таких акций:
mount //192.168.15.123/a /home/b/c -t cifs -o username=d,password=e,uid=f,gid=g,iocharset=utf8
mount //192.168.15.123/a /home/b/c -t cifs -o username=d,password=e,uid=f,gid=g,iocharset=utf8,codepage=cp437
mount //192.168.15.123/a /home/b/c -t cifs -o username=d,password=e,uid=f,gid=g,iocharset=utf8,codepage=cp850
Для получения дополнительной информации см. статью выше, в которой описываются последовательные попытки и логика автора, которые он использовал до тех пор, пока у него это не заработало.
решение2
Хочу отметить, что убедитесь, что проблема не в неправильно настроенных настройках SSH.
Только что провел целую ночь, пытаясь понять, как решить эту проблему. Монтирование папки NTFS Windows 8.1 с французскими символами (é,è) приводило к тому, что мой ls отображал:
вместо
Оказалось, проблема была в том, что Putty по умолчаниюОкно->Перевод->Удаленный набор символовбыл установлен наИСО-8859-1. После того, как я изменил кодировку на UTF-8, все отобразилось правильно.
Просто помните об этом, если вы всегда работаете удаленно, как я. Потратьте 5 секунд на проверку на локальной оболочке, прежде чем провести приятный вечер, читая и копаясь в технической документации Microsoft NTFS code page, чтобы попытаться выяснить, какая кодовая страница вашего локального раздела Windows NTFS установлена, чтобы вы могли установить правильную кодовую страницу в аргументе iocharset cifs :)