PC-BSD: Монтирование виндовой шары

Описание проблемы:

Делаем по статье "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

и перегружаемся.


На главную     |     Статьи     |     Обсудить в форуме

  eXTReMe Tracker