Для того, чтобы общие папки с 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

Теперь при выключении или перезагрузке системы, сначала отмонтируются сетевые ресурсы, а затем отключаются службы. Буквы и число в именах скриптов задают порядок, в котором они выполняются.

Возможно, в некоторых случаях нужно задавать скриптам номер, отличающийся от 19, например, 14. Это зависит от индивидуальных особенностей версии системы.

Ссылки