Использование сетевой файловой системы NFS

Материал из OpenBSD-Wiki
Перейти к: навигация, поиск
Данная статья 100 % копипаст с www.openbsd.ru

Мини-руководство «шаг за шагом»

В файле exports(5) перечисляем каталоги, которые должны быть предоставлены для общего доступа через NFS, а также задаем права доступа к ним:

# vi /etc/exports
/export -alldirs -ro -network=192.168.2.0 -mask=255.255.255.0
/usr/src /usr/ports -maproot=root 192.168.2.3

Последовательно загружаем portmap(8), nfsd(8), mountd(8):

# portmap
# nfsd -tun 4
# touch /var/db/mountdtab
# mountd

Для того чтобы mountd смог перечитать /etc/exports, следует отправить ему сигнал SIGHUP:

# kill -HUP `head −1 /var/run/mountd.pid`

Проверить корректность работы RPC-служб можно с помощью следующей команды:

% rpcinfo -p 192.168.2.1
   program vers proto   port
    100000    2   tcp    111  portmapper
    100000    2   udp    111  portmapper
    100003    2   udp   2049  nfs
    100003    3   udp   2049  nfs
    100003    2   tcp   2049  nfs
    100003    3   tcp   2049  nfs
    100005    1   udp    772  mountd
    100005    3   udp    772  mountd
    100005    1   tcp    804  mountd
    100005    3   tcp    804  mountd

Вот таким образом можно получить список экспортируемых общих ресурсов:

% showmount -e
Exports list on localhost:
/export 192.168.2.0
/usr/src 192.168.2.3
/usr/ports 192.168.2.3

В rc.conf(8) прописываем автозапуск служб NFS:

# vi /etc/rc.conf
nfs_server=YES
portmap=YES
nfsd_flags="-tun 4"

Конфигурирование клиента NFS заключается в выполнении следующих шагов. В первую очередь изменяем значение переменной sysctl(8):

# sysctl -w vfs.nfs.iothreads=4

Добавляем соответствующую запись в sysctl.conf(5):

# vi /etc/sysctl.conf
vfs.nfs.iothreads=4

Задаем опции монтирования общих ресурсов NFS в fstab(5):

# vi /etc/fstab
192.168.2.1:/export /mnt nfs ro, nodev, nosuid, tcp, soft, intr 0 0
192.168.2.1:/usr/src /usr/src nfs rw, noauto, nodev, nosuid, soft, intr 0 0
192.168.2.1:/usr/ports /usr/ports nfs rw, noauto, nodev, nosuid, soft, intr 0 0

Пример монтирования удаленной файловой системы:

# mount /usr/ports