How to Set Up NFS Server and Client on CentOS 8 - Как настроить NFS-сервер и клиент на CentOS 8

Как настроить NFS-сервер и клиент на CentOS 8?

Network File System (NFS), также известная как файловая система «клиент/сервер», представляет собой популярный кроссплатформенный протокол распределенной файловой системы, используемый для экспорта локальных файловых систем по сети, чтобы клиенты могли обмениваться каталогами и файлами с другими по сети и взаимодействовать друг с другом, и с файлами, как будто они установлены локально.

В CentOS/RHEL 8 поддерживаемыми версиями NFS являются NFSv3 и NFSv4, а версией NFS по умолчанию является 4.2, в которой предусмотрена поддержка списков контроля доступа (ACL), копирование на стороне сервера, распределенные файлы, резервирование пространства, маркировка NFS, улучшения макета и еще много чего.

В этой статье вы узнаете, как установить и настроить сервер NFS и клиент NFS в дистрибутивах CentOS/RHEL 8 Linux.

 

 

Предпосылки:

 

 

Наша среда тестирования:

NFS Server IP: 192.168.0.74
NFS Client IP: 192.168.0.50

 

 

Настройка сервера NFS в CentOS 8

1. Сначала начните с установки необходимых пакетов на сервере NFS. Пакеты представляют собой nfs-utils, который устанавливает демон для NFS-сервера ядра и связанные с ним инструменты, например, содержит программу showmount.

Выполните следующую команду, чтобы установить пакет на сервере NFS (используйте sudo, если вы управляете системой как пользователь без полномочий root):

# dnf install nfs-utils

 

nfs-utils

 

Как настроить NFS-сервер

 

2. После завершения установки запустите службу nfs-server, включите её автоматический запуск при загрузке системы, а затем проверьте её состояние с помощью команд systemctl:

# systemctl start nfs-server.service
# systemctl enable nfs-server.service
# systemctl status nfs-server.service

 

NFS

 

Как настроить NFS-сервер

 

Обратите внимание, что автоматически запускаются и другие службы, необходимые для работы сервера NFS или монтирования общих ресурсов NFS, такие как nfsd, nfs-idmapd, rpcbind, rpc.mountd, lockd, rpc.statd, rpc.rquotad и rpc.idmapd.

Файлы конфигурации для NFS-сервера:

  • /etc/nfs.conf — основной файл конфигурации для демонов и инструментов NFS.
  • /etc/nfsmount.conf — файл конфигурации монтирования NFS.

 

3. Затем создайте файловые системы для экспорта или обмена на сервере NFS. Для этой статьи мы создадим две файловые системы.

# mkdir -p /mnt/nfs_shares/{F1,F2}

 

4. Затем экспортируйте указанные выше файловые системы в файл конфигурации сервера NFS — /etc/exports, чтобы определить локальные физические файловые системы, доступные для клиентов NFS:

/mnt/nfs_shares/F1 192.168.0.60/24(rw,sync)
/mnt/nfs_shares/F2 192.168.0.70/24(rw,sync)

 

Вот некоторые из параметров экспорта (для получения дополнительной информации о параметрах экспорта прочитайте man export):

  • rw — разрешает как чтение, так и запись в файловой системе.
  • sync — сообщает серверу NFS о необходимости выполнения операций записи (записи информации на диск) (применяется по умолчанию).
  • all_squash — отображает все UID и GID из клиентских запросов анонимному пользователю.
  • no_all_squash — используется для отображения всех UID и GID из клиентских запросов на идентичные UID и GID на сервере NFS.
  • root_squash — отображает запросы от пользователя root или UID/GID 0 от клиента на анонимный UID/GID.

 

5. Чтобы экспортировать файловую систему, указанную выше, введите команду exportfs с флагом -a, означающим экспортировать или отменить экспорт всех каталогов, -r означает повторный экспорт всех каталогов, синхронизируя /var/lib/nfs/etab с /etc/exports и файлами в /etc/exports.d, а флаг -v включает подробный вывод:

# exportfs -arv

 

Как настроить NFS-сервер

 

Чтобы отобразить текущий список экспорта, выполните следующую команду. Обратите внимание, что в таблице экспорта также применяются некоторые параметры экспорта по умолчанию, которые не определены явно, как показано на следующем скриншоте:

# exportfs -s

 

 

 

7. Затем, если у вас запущена служба firewalld, вам нужно разрешить трафик к необходимым службам NFS (mountd, nfs, rpc-bind) через брандмауэр, затем перезагрузите правила брандмауэра, чтобы применить изменения, как показано ниже:

# firewall-cmd --permanent --add-service=nfs
# firewall-cmd --permanent --add-service=rpc-bind
# firewall-cmd --permanent --add-service=mountd
# firewall-cmd --reload

 

Как настроить NFS-сервер

 

Настройка клиента NFS в клиентских системах

8. Теперь на клиентском узле(ах) установите необходимые пакеты для доступа к общим ресурсам NFS в клиентских системах. Запустите соответствующую команду для вашего дистрибутива:

# dnf install nfs-utils nfs4-acl-tools [On CentOS/RHEL]
$ sudo apt install nfs-common nfs4-acl-tools [On Debian/Ubuntu]

 

9. Затем выполните команду showmount, чтобы показать информацию о монтировании для NFS-сервера. Команда должна вывести экспортированную файловую систему на клиент, как показано на скриншоте:

# showmount -e 192.168.0.74

 

 

 

9. Затем создайте локальную файловую систему/каталог для монтирования удаленной файловой системы NFS и смонтируйте её как файловую систему nfs:

# mkdir -p /mnt/backups
# sudo mount -t nfs 192.168.0.74:/mnt/nfs_shares/F1 /mnt/backups

 

10. Затем убедитесь, что удаленная файловая система была смонтирована, запустив команду mount и отфильтровав nfs mounts:

# mount | grep nfs

 

 

11. Чтобы сделать монтирование постоянным даже после перезагрузки системы, введите следующую команду, чтобы ввести соответствующую запись в /etc/fstab:

# echo "192.168.0.74:/mnt/nfs_shares/F1 /mnt/backups nfs defaults 0 0">>/etc/fstab
# cat /etc/fstab

 

Как настроить NFS-сервер

 

12. Наконец, проверьте, работает ли установка NFS, создав файл на сервере, и проверьте, виден ли этот файл на клиенте:

# touch /mnt/backups/server_file.log [On NFS Server]
# ls -l /mnt/backups/server_file.log [On NFS client]

 

Затем выполните обратное:

# touch /mnt/backups/client_file.log [On NFS Client]
# ls -l /mnt/backups/client_file.log[On NFS Server]

 

13. Размонтировать удаленную файловую систему на стороне клиента:

# umount /mnt/backups

 

Обратите внимание, что вы не можете размонтировать удаленную файловую систему, если вы работаете в ней.

 

 

 

В этой статье мы показали, как установить, настроить сервер и клиент NFS в CentOS/RHEL 8. Если у вас есть какие-либо мысли или вопросы, используйте форму комментариев ниже, чтобы связаться с нами.

 

 

Спасибо за уделенное время на прочтение статьи о том, как настроить NFS-сервер и клиент на CentOS 8!

Если возникли вопросы, задавайте их в комментариях.

Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Ciscoкурсы по кибербезопасности,  полный курс по кибербезопасностикурсы DevNet (программируемые сети) от Академии Ciscoкурсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).

Курсы Cisco и Linux с трудоустройством!

Спешите подать заявку! Осталось пару мест. Группы стартуют 22 июля, а следующая 19 августа, 23 сентября, 21 октября, 25 ноября, 16 декабря, 20 января, 24 февраля.
Что Вы получите?
  • Поможем стать экспертом в сетевом администрировании и получить международные сертификаты Cisco CCNA Routing & Switching или Linux LPI.
  • Предлагаем проверенную программу и учебник экспертов из Cisco Networking Academy и Linux Professional Institute, сертифицированных инструкторов и личного куратора.
  • Поможем с трудоустройством и сделать карьеру. 100% наших выпускников трудоустраиваются.
Как проходит обучение?
  • Проводим вечерние онлайн-лекции на нашей платформе или обучайтесь очно на базе Киевского офиса.
  • Спросим у вас об удобном времени для практик и подстроимся: понимаем, что времени учиться мало.
  • Если хотите индивидуальный график — обсудим и осуществим.
  • Выставим четкие дедлайны для самоорганизации. Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
А еще поможем Вам:
  • отредактировать резюме;
  • подготовиться к техническим интервью;
  • подготовиться к конкурсу на понравившуюся вакансию;
  • устроим на работу в Cisco по программе Cisco Incubator, New Graduate и Experienced. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.
Чтобы учиться на курсах Cisco CCNA Routing & Switching и Linux LPI, подайте заявку или получите бесплатную консультацию.
RHELСистемы хранения данных

Больше похожих постов

Lemp on RHEL8

Как установить LEMP на RHEL 8

446
0
Многие хорошо знают о LAMP, но меньше людей знают о стеке LEMP, который заменяет веб-сервер Apache на облегченный Nginx. Каждый…
Как настроить NFS в RHEL/CentOS/Fedora и Debian/Ubuntu

Как настроить NFS в RHEL/CentOS/Fedora и Debian/Ubuntu

446
0
NFS (сетевая файловая система) в основном разработана для совместного использования файлов и папок между системами Linux/Unix компанией Sun Microsystems в…

3 комментария. Оставить новый

  • Доброго времени суток!
    Столкнулся с проблемой, на примонтированной шаре остаются файлы вроде:
    .nfs000000000000472100000001
    и их не получается никак удалить, lsof и fuser ничего не показывают, помогает только ребут хоста. Зараннее благодарен за любые ответы.
    OS: Centos-8 nfs-utils-2.3.3-31.el8.x86_64

    Ответить
  • Мне кажется, вы в 12 пункте кое что перепутали с каталогами.

    Ответить
  • Вы забыли добавить, что если клиент работает из под рута, то нужно добавить no_root_squash, иначе, клиент не сможет записывать данные на nfs диск.

    vim /etc/exports
    /mnt/nfs_shares/F1 192.168.1.22/24(rw,sync,no_root_squash)
    exportfs -arv

    Ответить

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Заполните поле
Заполните поле
Пожалуйста, введите корректный адрес email.
Вы должны согласиться с условиями для продолжения

Самое читаемое
Меню