Categories: FreeBSD

freebsd-nfs/

NFS (Network File System) — сетевая файловая система, или, если другими словами, протокол, позволяющий получать доступ к файлам по сети так, словно они находятся у вас локально. NFS можно использовать как альтернативу Samba , например, для хранения ваших фоточек. А системы вроде PVA и Proxmox , к примеру, используют NFS для хранения ISO-образов операционных систем, шаблонов виртуальных машин, а также бэкапов. NFS реализован прямо в ядре FreeBSD — см опции ядра , имена которых начинаются с NFS . Поэтому для использования NFS ничего устанавливать не требуется, в системе все и так уже есть!

Примечание: Описанные ниже шаги были проверены мной на двух виртуалках под управлением FreeBSD 11.0-CURRENT. Далее предполагается, что клиент крутится на 192.168.0.109, а сервер — на 192.168.0.110.

Настройка сервера

Правим /etc/rc.conf:

rpcbind_enable=»YES»
nfs_server_enable=»YES»
# -t — Serve TCP NFS clients
# -u — Serve UDP NFS clients
# -n — How many servers to create
# -h — Which IP address or hostname to bind to
# (see man nfsd)
nfs_server_flags=»-t -u -n 3 -h 192.168.0.110″
mountd_enable=»YES»
# -r — Allow mount RPCs requests for regular files to be served
# -p — Force mountd to bind to the specified port
# (see man mountd)
mountd_flags=»-r -p 649″

Создаем каталог, который будем шарить:

sudo mkdir / var / nfsshare

Создаем файл /etc/exports такого содержания:

/var/nfsshare -alldirs -maproot=root -network 192.168.0.0/24

Запускаем демонов, что добавили в rc.conf:

sudo service rpcbind start
sudo service nfsd start # запускает и mountd

Поздравляю, настройка NFS-сервера завершена!

Настройка клиента

На клиенте пробуем примонтировать каталог:

sudo mkdir / var / nfsshare
sudo mount -t nfs 192.168.0.110: / var / nfsshare / var / nfsshare

Переходим в /var/nfsshare. Проверяем, что работа с файлами, каталогами и правами на эти файлы и каталоги происходит в соответствии с нашими ожиданиями. На сервере видим, что его /var/nfsshare тоже меняется.

Если все работает, в /etc/rc.conf на клиенте пишем:

nfs_client_enable=»YES»

Затем дописываем в /etc/fstab:

192.168.0.110:/var/nfsshare /var/nfsshare nfs rw 0 0

Ребутаем клиента. Проверяем, что после перезагрузки все само монтируется.

Заключение

Как обычно, прекрасными источниками дополнительной информации являются маны и хэндбук .

Я не супер большой знаток NFS, и кое-какие моменты, откровенно говоря, мне не до конца ясны. Видимо, пользователей и группы нужно синхронизировать на сервере и всех клиентах, иначе у вас будут большие проблемы с их uid’ами и gid’ами. В интернетах пишут, что в NFS есть авторизация по логину и паролю через Kerberos. Однако я выяснил, что не все приложения, работающие с NFS, ее поддерживают. Поэтому в общем случае всю безопасность в NFS приходится строить на системных правах и правилах фаервола. Также без Kerberos в NFS нет шифрования трафика, поэтому зачастую не лишено смысла использовать NFS через VPN . Наконец, нужно понимать, что никакой отказоустойчивости в NFS не предусмотрено. Один перерубленный кабель и на клиентах все тут же встанет.

Дополнение: Памятка по использованию WebDAV

admin

Share
Published by
admin
Tags: FreeBSD

Recent Posts

vim-commands/

Самое главное — побороть боязнь белого листа. Я всегда говорю это себе, когда нужно начать…

4 недели ago

firefox-thunderbird-en-ru-dict/

По не вполне ясным причинам, Firefox умеет проверять орфографию либо только в русских, либо только…

4 недели ago

perl-hacks/

Около месяца собирал разные «хаки» на языке программирования Perl. Эта подборка наглядно демонстрирует, как в…

4 недели ago

perl-cy-check/

C недавних пор я стал увлекаться SEO. Порой передо мной встает задача быстро проверить индекс…

4 недели ago

which-cms-perl/

Недавно написал несколько скриптов, позволяющих автоматически определять, какая CMS (Content Management System, система управления контентом)…

4 недели ago

smtp-descr/

Я так подозреваю, что среди вас найдется те, кто скажет, что этот пост боян и…

4 недели ago