|
Описание проблемы:
Делаем по статье "mount_smbfs - монтирование форточных шар"
Сделал все как написано, подмонтировалась шара, все отлично, но! На шаре папки названы русскими буквами, например "Отдел логистики" и внутри папки "заказы" и т.п. Так вот, если я ломплюсь в эту папку по сети "smb://Documents/Отдел логистики" то все работает как надо, а если же я после монтирования захожу в /mnt/docs , то вижу только папки первого уровня и зайти внутрь не могу.
Методом научного математического тыка выяснилось, что если папки названы латиницей то всё работает как надо, вывод - проблема в кодировке.
Проверял 2-мя способами: #ls -l /mnt/docs он все четко показывает, корректно отображает русские буквы, но это первый уровень. Внутрь уже не заходит, то есть при попытке набрать #ls -l /mnt/docs/Обмен получаю: "нет такого файла"
У меня КДЕ, открываю файл-менеджер, Konqueror, который и, начинаю лазит по папкам, показывает пустоту внутри либо дублирует пустые папки с названием оналогичным корневой. "smb://Documents/Обмен/Обмен/Обмен/Обмен/Обмен/" и все пустые... Либо вообще повисает наглухо если начинаю экспериментировать с кодировками. При этом директории названые латиницей открываются нормально и содержимое отображается при условии что внутри нет файлов в названии которых есть кириллица. :(((
Второй способ, собсно который мне и нужен особенно, это попытка открыть, либо сохранить файл в OpenOffice - точно такая же фигня - в /mnt/docs ничего не открывается, только видны названия корневых папок, либо виснет.
Решение после долгих поисков нашлось, как всегда на сайте МегаГуру lissyara.
В итоге делать надо так как описано в статье "Локализация FreeBSD на CP1251", а затем уже монтировать с cp1251:
#mount_smbfs -E cp1251:cp866 //user@server1/Documents /mnt/docs
это если локалью ставишь cp1251, если koi8-r, то koi8-r:cp866 будет работать.
сейчас добиваю вопрос монтирования шары автоматом через /etc/fstab
Update:
Редактируем #ee /etc/fstab добавляем строку //USER@server/sharename /mnt/docs smbfs rw 0 0
Редактируем: #ee /etc/nsmb.conf
[default] workgroup=MYDOMAIN
# The 'FSERVER' is an NT server. #[FSERVER] #addr=192.168.4.4
[SERVERNAME:USER] # use persistent password cache for user 'joe' charsets=cp1251:cp866 password=mypass
пояснения: дело в том, что должно работать так, как написано у lissara, но у меня то ли из-за PC-BSD хитросделанной. то ли из-за DNS конкретно в моей сетке, не работает с правильно прописаной секцией "Сервер" в /etc/nsmb.conf поэтому пришлось ее закоментить и имя сервера прописать в прямом виде.
Дополнение:
Иногда возникает такой глюк, руками из терминала монтируется шара нормально, а автоматически из /etc/fstab монтируется криво.
В консоли при этом кириллица /mnt может и не отображаться, а скажем видится как "???? ?" или кракозябрами. Это пофигу, главное чтобы папки корректно были видны в окнах Konqueror.
Если после локализации шрифты в примонтированной папке отображаются не правильно, смотрим при загрузке, если появляется ошибка "не найден файл libiconv.so" (а она появляется в любом слоучае. даже если правильно отображаются кириллические буквы в Konqueror), выполняем следующую команду
# cp -lv /usr/local/lib/libiconv.so.3 /usr/lib/libiconv.so
и перегружаемся.
|