Использование NFS

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

Серверная часть

Серверная часть файловой системы не обязательно должна находиться на сервере. Если вы собираетесь предоставлять свои файловые ресурсы другим пользователям в сети, то вам необходимо установить серверную часть, а если вы собираетесь воспользоваться файловыми ресурсами других пользователей или серверов посредством NFS, то вам необходимо установить клиентскую часть. Начнем с серверной части.

user$ su
root# aptitude update
root# aptitude safe-upgrade
root# aptitude install nfs-kernel-server

Все зависимости подтянутся автоматически. После установки основного пакета, необходимо определить какие именно файловые ресурсы будут предоставлены пользователям. Настройки доступа определяются в файле «/etc/exports».

root# mcedit /etc/exports

Каждый разделяемый ресурс пишется с новой строки, ниже пример разделяемого ресурса

...
/home/user  192.168.1.0/24(ro, async, no_subtree_check)
...

Некоторое пояснения формата строки:

  • /home/user — предоставляемый ресурс другим пользователям в сети, директория не обязательно должна находиться в каталоге /home предложено как пример;
  • 192.168.1.0/24 — адрес сети с префиксом или 192.168.1.0/255.255.255.0 так же может быть указан конкретный IP адрес (например 10.0.0.145) или имя узла с применением шаблонов (например *.comp?.mynet.lan — разрешено использование ресурса всех узлов из поддоменовcomp1, comp2, compd и т.д. домена mynet.lan);
  • ro — указывает, что ресурс предоставляется только для чтения. Если необходимо предоставить режим чтение/запись необходимо указать — rw;
  • async — разрешает отвечать клиенту до того, как будут завершены предыдущие операции записи (в оригинальном протоколе NFS это запрещено), что повышает быстродействие;
  • no_subtree_check — не осуществлять проверку вложенных каталогов;
  • no_root_squash – по умолчанию пользователь root на клиентской машине не будет иметь доступа к разделяемой директории сервера. Этой опцией мы снимаем это ограничение. В целях безопасности этого лучше не делать.

Когда будут завершены определения всех ресурсов — сохраняем файл «/etc/exports» и перезапускаем службу NFS.

root# /etc/init.d/<span id="fullpost">nfs-kernel-server</span> restart

Серверная часть службы NFS готова к работе. Посмотреть какие ресурсы предоставлены можно командой:

root# showmount -e

Если вы только добавляли ресурсы в файл «/etc/exports», то их можно активировать без перезапуска службы NFS. Команда полезна при длительных операциях чтения/запись.

root# exportfs -a

На этом настройку серверной части файловой системы NFS можно завершить и приступить к настройке клиентской части.

Клиентская часть

Устанавливаем клиента файловой системы NFS

user$ su
root# aptitude install portmap nfs-common

Клиентская часть установлена, можно приступить к монтированию. Монтирование можно осуществлять двумя способами: автоматическое монтирование при загрузке системы или вручную по требованию. Рассмотрим оба варианта начиная с ручного, т.к. оба они могут быть востребованы.

Для ручного монтирования необходимо определить точку монтирования, либо использовать уже имеющуюся, для наглядности создадим в домашнем каталоге папку «testmount»

user$ mkdir ~testmount

Теперь можно приступать к непосредственному монтированию файловой системы NFS.

user$ su
root# mount 10.0.0.10:/home/user /home/user/testmount

Файловая система смонтирована, стоит прокомментировать последнюю команду:

  • mount — команда монтирования;
  • 10.0.0.10:/home/user — здесь 10.0.0.10 адрес удаленного узла (может быть имя см. выше),:/home/user — ресурс, который предоставляет сервер (вы должны его знать);
  • /home/user/testmount — точка монтирования, созданная нами;

Для автоматического монтирования файловых систем NFS можно их прописать в файл «/etc/fstab», тогда во время загрузки системы они будут смонтированы автоматически.

root# mcedit /etc/fstab

Добавляем запись с нашими настройками

..
10.0.0.10:/home/user /home/user/testmount nfs intr,soft
..

Напоминаю! Что после всех добавленных строк в файл «/etc/fstab» последняя строка должна быть пустой, иначе можно схватить очень неприятный глюк в виде не загружаемой системы (когда его поправят не ясно). Рассмотрим опции монтирования.

  • 10.0.0.10:/home/user — монтируемый ресурс, детально см. выше;
  • /home/user/testmount — точка монтирования;
  • nfs — тип монтируемой файловой системы, в нашем случае NFS;
  • intr — позволяет прерывать процесс, работающий с файловой системой;
  • soft — спасает от безнадежного зависания, если удаленный ресурс не доступен;

Теперь при следующем запуске системы файловые системы NFS смонтируются автоматически, а если они будут не доступны на момент монтирования, то загрузка продолжится с пропуском монтирования. По требованию их можно будет смонтировать вручную или вызвать команду монтирования файловых устройств описанных в «/etc/fstab»

root# mount - a

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

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