===== Установка и настройка сервера и клиента NFS в CentOS Linux 7.2 ====== В этой статье мы рассмотрим простой пример того, как установить и настроить **Network File System** (**NFS**) в **CentOS Linux 7.2**. На стороне сервера будет настроена NFS-шара, а на стороне клиента эта шара будет подключена. В некоторых дистрибутивах Linux NFS-сервер и клиент устанавливаются при установке ОС. Например в CentOS 6 NFS-сервер устанавливался по умолчанию, но служба не была включена в автозагрузку. В CentOS 7 серверные и клиентские компоненты NFS нужно устанавливать самостоятельно. При этом в CentOS 7 используется обновлённая усовершенствованная версия **NFS 4.1**. \\ ==== Установка и настройка NFS-сервера ===== Устанавливаем пакеты для организации NFS-сервера # yum install nfs-utils Включаем автозагрузку для служб **rpcbind** и **nfs-server**: # systemctl enable rpcbind nfs-server Created symlink from /etc/systemd/system/multi-user.target.wants/nfs-server.service to /usr/lib/systemd/system/nfs-server.service. Запускаем службы: # systemctl start rpcbind nfs-server Проверяем для каких версий NFS способен принимать подключения наш NFS-сервер: # rpcinfo -p localhost program vers proto port service ... 100003 3 tcp 2049 nfs 100003 4 tcp 2049 nfs 100003 3 udp 2049 nfs 100003 4 udp 2049 nfs ... Как видим, наш NFS сервер должен принимать подключения как **NFSv3** так и **NFSv4**. Создаём каталог под NFS-шару # mkdir -p /var/nfs # chmod -R 777 /var/nfs Создаём NFS-шару в файле **/etc/exports**: # cat /etc/exports /var/nfs 10.1.1.0/24(rw,sync,no_root_squash,no_all_squash) * /var/nfs - путь к папке, для которой предоставляется общий доступ; * 10.1.1.0/24 –IP-подсеть, которой разрешён доступ к шаре; * (rw,sync,no_root_squash,no_all_squash) - набор опций для шары. Описание использованных опций позаиствовано отсюда: * [[http://help.ubuntu.ru/wiki/nfs|Русскоязычное сообщество Ubuntu Linux - Wiki - NFS]] * [[http://tdkare.ru/sysadmin/index.php/Exports|Википедия Пингвиньи радости - Описание параметров файла конфигурации Exports]]
rw – доступ на чтение и запись (может принимать значение ro-только чтение); sync – синхронный режим доступа(может принимать обратное значение- async). sync (async) - указывает, что сервер должен отвечать на запросы только после записи на диск изменений, выполненных этими запросами. Опция async указывает серверу не ждать записи информации на диск, что повышает производительность, но понижает надежность, т.к. в случае обрыва соединения или отказа оборудования возможна потеря данных; no_root_squash – запрет подмены uid/gid для суперпользователя (root). По умолчанию пользователь root на клиентской машине не будет иметь доступа к разделяемой директории сервера. Этой опцией мы снимаем это ограничение. В целях безопасности этого лучше не делать; all_squash / no_all_squash - установка подмены идентификатора от всех пользователей all_squash - подмена запросов от ВСЕХ пользователей (не только root) на анонимного uid/gid, либо на пользователя, заданного в параметре anonuid/anongid. Используется обычно для публичного экспорта директорий. no_all_squash - запрет подмены uid/gid для от всех пользователей
Чтобы служба** nfs-server** перечитала конфигурацию, выполним # exportfs -r Выполнив команду **exportfs** убедимся в том, что ресурс опубликован: # exportfs /var/nfs 10.1.1.0/24 Добавляем разрешающие правила брандмауэра: # firewall-cmd --permanent --zone=public --add-service=nfs # firewall-cmd --permanent --zone=public --add-service=mountd # firewall-cmd --permanent --zone=public --add-service=rpc-bind # firewall-cmd --reload \\ ==== Установка и настройка клиента NFS === Устанавливаем пакетов поддержки NFS: # yum install nfs-utils Включаем и запускаем включаем службы NFS: # systemctl start rpcbind # systemctl enable rpcbind Создаем каталог, в который будет смонтирована шара и монтируем шару: # mkdir /mnt/nfs-share # mount -t nfs KOM-FS03.holding.com:/var/nfs/ /mnt/nfs-share/ Проверяем то, что каталог примонтирован: # mount | grep nfs4 KOM-FS03.holding.com:/var/nfs/ on /mnt/nfs-share type nfs4 (rw,relatime,vers=4.0,rsize=1048576,wsize=1048576, namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys, clientaddr=10.1.1.201,local_lock=none,addr=10.1.1.4) # df -hT | grep nfs4 KOM-FS03.holding.com:/var/nfs nfs4 3.6T 88M 3.4T 1% /mnt/nfs-share Проверим возможность записи в шару # touch /mnt/nfs-share/test.txt # rm /mnt/nfs-share/test.txt Настраиваем автоматическое монтирование шары при перезагрузке системы, добавляя запись в конец файла **/etc/fstab**: # cat /etc/fstab ... KOM-FS03.holding.com:/var/nfs/ /mnt/nfs-share/ nfs defaults 0 0 ---- {{:user:blogroot.png?50&nolink |}} Автор первичной редакции:\\ [[user:blogroot|Алексей Максимов]] \\ Время публикации: 01.09.2016 15:30 {{tag>Linux CentOS "CentOS 7.2" NFS NFSv4 firewall-cmd fstab}} ~~DISCUSSION~~