Установка NFS сервера на CentOS 7

Привет, %username%! Рассмотрим довольно простую задачу: развернуть NFS-сервер на базе CentOS 7. Что и куда писать? Короче всё просто и легко!
⚠️ CentOS 7 — EOL с 30 июня 2024. Пост оставлен как есть для тех, кто всё ещё поддерживает легаси-серверы. Для новых установок используй Rocky Linux 9 или AlmaLinux 9 — команды установки и настройки NFS идентичны (
yum→dnf,firewalldиexportsбез изменений). На EL9 также имеет смысл присмотреться к nfs-ganesha как user-space альтернативе ядерномуnfsd.
Настройка NFS-сервера#
Выполняем в командной строке (нужны привилегии супер пользователя) следующие операции. Сначала устанавливает требуемые пакеты:
sudo yum install nfs-utils nfs-utils-libЗатем включаем установленную службу:
sudo systemctl enable rpcbind
sudo systemctl enable nfs-server
sudo systemctl enable nfs-lock
sudo systemctl enable nfs-idmap
sudo systemctl start rpcbind
sudo systemctl start nfs-server
sudo systemctl start nfs-lock
sudo systemctl start nfs-idmapПосле этого переходим к настройке каталога, который будет использоваться для раздачи контента нашим NFS сервером. Рекомендуется делать NFS шару в /var/nfs_name, чтобы не иметь проблем с записью файлов и назначением прав доступа. но мы не боимся трудностей и сделаем гораздо хитрожопее! Мы стандартно добавим отдельным LV раздел для шары, дабы в дальнейшем нам было легко и просто. В примере используется каталог /nfs-share. Итак, создаем папку и назначаем права доступа:
sudo mkdir -p /nfs-share
sudo chmod -R 777 /nfs-shareПосле этого необходимо добавить в файл /etc/exports информацию о предоставляемой шаре через NFS:
sudo nano /etc/exportsи добавляем строку:
/nfs-share 192.168.199.0/24(rw,sync,no_root_squash,no_all_squash)При этом:
/nfs-share– расшариваемая директория192.168.199.0/24– IP адрес клиента (в нашем случае подсеть - любой клиент из этой подсети)rw– разрешение на записьsync– синхронизация указанной директорииno_root_squash– включениеrootпривилегийno_all_squash— включение пользовательской авторизации
Выполняем в командной строке exportfs -a, чтобы подключить этот каталог в список экспортируемых. В завершение настройки NFS сервера перезапускаем его:
sudo systemctl restart nfs-serverТеперь добавляем (открываем) порты NFS сервера в брандмауэре (firewalld) для корректной работы в сети:
sudo firewall-cmd —permanent —add-port=111/tcp
sudo firewall-cmd —permanent —add-port=54302/tcp
sudo firewall-cmd —permanent —add-port=20048/tcp
sudo firewall-cmd —permanent —add-port=2049/tcp
sudo firewall-cmd —permanent —add-port=46666/tcp
sudo firewall-cmd —permanent —add-port=42955/tcp
sudo firewall-cmd —permanent —add-port=875/tcp
sudo firewall-cmd —permanent —zone=public —add-service=nfs
sudo firewall-cmd —permanent —zone=public —add-service=mountd
sudo firewall-cmd —permanent —zone=public —add-service=rpc-bind
sudo firewall-cmd —reloadГотово! Установка и настройка NFS сервера на CentOS 7 завершена.
Установка и настройка клиента NFS#
В завершении рассмотрим процесс настройки клиента для подключения (работы) с развернутым ранее NFS сервером. Для чего выполняем следующие команды:
sudo yum install nfs-utils nfs-utils-libВключаем сервис и активируем автозагрузку:
sudo systemctl enable rpcbind
sudo systemctl enable nfs-server
sudo systemctl enable nfs-lock
sudo systemctl enable nfs-idmap
sudo systemctl start rpcbind
sudo systemctl start nfs-server
sudo systemctl start nfs-lock
sudo systemctl start nfs-idmapСоздаем каталог, куда будем монтировать шару:
sudo mkdir /media/nfs_share
sudo mount -t nfs 192.168.199.101:/nfs-share/ /media/nfs_share/Добавление автомонтирования при включение системы:
sudo vim /etc/fstabПримерное содержимое файла:
/dev/mapper/centos-root / xfs defaults 1 1
UUID=2ba8d78a-c420-4792-b381-5405d755e544 /boot xfs defaults 1 2
/dev/mapper/centos-swap swap swap defaults 0 0
192.168.199.101:/nfs-share/ /media/nfs_share/ nfs rw,sync,hard,intr 0 0Проверяем, что все примонтировалось правильно:
sudo mount -favРадуемся жизни! На этом всё!
Если у тебя есть вопросы, комментарии и/или замечания – заходи в чат , а так же подписывайся на канал .
О способах отблагодарить автора можно почитать на странице “Донаты ”.