Установка для ubuntu и debian
для сервера
aptitude install nfs-kernel-server nfs-common
для клиента
aptitude install nfs-common
возможно понадобится перезапустить
# /etc/init.d/portmap restart
# /etc/init.d/nfs-common restart
Настройка
Особенности настройки сервера в Debian Lenny.
# nano /etc/exports
Не указываем в ip адресе звездочек - работает не правильно. Не ставим пробелы в скобках после запятых.
Пример:
/srv/film 192.168.1.10(rw,sync,fsid=0,crossmnt,all_squash,anonuid=1000,anongid=1000,no_subtree_check)
/srv/media 192.168.1.0/24(ro,async,all_squash,anonuid=1000,anongid=1000,no_subtree_check)
Поскольку NFS думает что у нас централизованная аутентификация, то смонтированые по сети каталоги будут использоваться под логинами локальных пользователей, а то что они разные нет никаких гарантий(у меня на ноуте и на десктопе два разных пользователя с одним uid).
Для устранения проблем с безопасностью и разными накладками эта запись all_squash,anonuid=1000,anongid=1000 приводит всех входящих юзеров к одному логину и группе. Им уже можно без головной боли выдавать права.
fsid=0,crossmnt, - если внутри /srv/film будут встречаться смонтированные каталоги(смотри внизу) то без этой записи они останутся пустыми.
Обязательно после сохранения настроек
# exportfs -ra
покажет ошибки в конфиге и применяем новые настройки.
На стороне клиента
mount 192.168.0.100:/srv/film /mnt/film (что-то типа -F nfs для монтировани nfs не нужно)
или в fstab
192.168.0.100:/opt/files /mnt nfs rw,noauto,user 0 0
(noauto,user - не монтировать автоматом, ибо может не быть сети и монтировать с правами непривилегированного пользователя)
upd
оптимизированные параметры монтирования на основе заметки
при потерях пакетов убираем udp, soft только для ro(насколько он кошерней, пока не знаю)
mount -t nfs -o rw,async,noatime,udp,hard,intr
mount -t nfs -o ro,async,noatime,udp,soft
имхо для записи лучше синхроность - для надежности(опция sync)
mount -t nfs -o rw,sync,noatime,udp,hard,intr
Можно почитать аналогичные заметки тут или тут
Не используйте символические ссылки внутри расшариваемых каталогов - они не работают. Используйте mount --bind(это доступно только в nfs v4 в треретьем такого нет). Его лучше прописать в fstab( обязательно none не забываем - иначе бывают глюки аля не отмонтируестся каталог)
/srv/serials /srv/film/serials none bind 0 0
Комментариев нет:
Отправить комментарий