Содержание
Для того, чтобы общие папки с Windows-серверов (или Samba-серверов) автоматически подключались при запуске системы, необходимо в /etc/fstab
прописать:
//<адресс сервера>/<имя ресурса> /<куда монтируем> cifs credentials=/root/.smbclient,iocharset=utf8,file_mode=0666,dir_mode=0777,_netdev 0 0
А теперь разъясним что было написано выше:
credentials=/root/.smbclient
— полезно, если в пароле к серверу имеются символы, типа запятой. Содержимое файла:
username=<логин> password=<пароль>
iocharset=utf8
— кодировка файлов на сервере. Полезно указать, чтобы не было проблем с отображением кириллицы в именах файлов.
file_mode=0666
— права доступа к файлам на сервере. В данном случае файлы могут читать и изменять все пользователи системы.
dir_mode=0777
— права доступа к каталогам на сервере. В данном случае каталог может быть изменен любым пользователем.
_netdev
— опция, указывающая, что данный ресурс является сетевым. Полезно, если при запуске системы будет отсутствовать сеть, тогда система не будет выдавать ошибку о невозможности примонтирования ресурсов.
Проблемы
В Debian-дистрибутивах, в том числе и Ubuntu (как минимум, в Ubuntu 8.04 и Ubuntu 9.04) наблюдается следующая проблема.
Если ресурсы примонтированы вышеуказанным методом, то при перезагрузке или выключении системы, можно будет увидеть такое сообщение:
1.CIFS VFS: No Response for Cmd <number> mid <number>
Это связано с тем, что сначала отключаются все службы (S20sendsigs
), а затем делается попытка отмонтировать сетевые ресурсы (S31umountnfs.sh
). Но службы-то уже отключены.
Для ее устранения необходимо отредактировать уровни запуска, а именно rc0
и rc6
. Для этого выполняем команды:
cd /etc/rc0.d sudo mv S31umountnfs.sh S19umountnfs.sh
Те же действия необходимо проделать и в каталоге rc6.d
:
cd /etc/rc6.d sudo mv S31umountnfs.sh S19umountnfs.sh
Теперь при выключении или перезагрузке системы, сначала отмонтируются сетевые ресурсы, а затем отключаются службы. Буквы и число в именах скриптов задают порядок, в котором они выполняются.