На сервере (ресурсы которого будем подключать):

1. Устанавливаем софт: apt-get install nfs-kernel-server nfs-common
2. Редактируем файл /etc/exports. В нем прописывается список ресурсов, которые необходимо открыть и для кого
Пример записи:
/home/user/data 192.168.1.10(rw,no_root_squash,sync,all_squash,anonuid=501,anongid=501)
где:
/home/user/data - папка на сервере, к которой открываем доступ
192.168.1.10 - ip адрес клиента, которому доступ разрешен
(rw,no_root_squash,sync,all_squash,anonuid=501,anongid=501) - параметры подключения (см в полезных ссылках)
3. Перезапускаем сервис: 
/etc/init.d/nfs-kernel-server restart 
или
exportfs -a

На клиенте (где будем использовать)
1. Устанавливаем софт: apt-get install nfs-common
2. Монтируем систему в ручную в указанную папку:
mount 192.168.1.10:/home/user/data ~/mnt/nfs_data
или если хотим монтировать автоматом при загрузке - нужно прописать в /etc/fstab :
192.168.1.10:/home/user/data /home/user/mnt/nfs_data nfs rw,hard,intr 0 0

Возможные проблемы и сложности:
1. если пользователи на сервере и на клиенте совпадают (uid, gid) - то проблем нет. 
Если не совпадают - то нужно в exports, в параметрах прописать: all_squash,anonuid=501,anongid=501 - 
где anonuid=501,anongid=501 - это идентификаторы пользователя и группы на сервере 
от имени которого будут выполняться все действия.
2. если сервер не будет запущен, у клиента прописано автомонтирование в fstab, 
то при загрузке клиента - может компьютер долго пытаться запустить систему. 
Для решения можно поиграть с параметрами монтирования hard/soft, fg/bg, timeo, retrans, retry (см ссылки)

Полезные ссылки:

blog comments powered by Disqus