Экспорт файловых систем NFS

22.3. Экспорт файловых систем NFS

Предоставление в общий доступ или разделение файлов NFS-сервером называется экспортом каталогов. Для настройки системы в качестве NFS-сервера можно воспользоваться програмой Настройка сервера NFS (NFS Server Configuration Tool).

Чтобы вы могли использовать графическую версию средства Настройка сервера NFS (NFS Server Configuration Tool), у вас должна работать система X Window, должен быть установлен RPM-пакет system-config-nfs и вы должны иметь права root. Чтобы запустить это приложение, выберите в Главном меню (Main Menu) (на панели) => Системные параметры (System Settings) => Настройка сервера (Server Settings) => NFS или введите команду system-config-nfs.

Рисунок 22-1. Настройка сервера NFS

Чтобы добавить NFS-ресурс, нажмите кнопку Добавить (Add). На экране появляется окно, показанное на Рисунке 22-2.

На вкладке Основные (Basic) вы должны задать следующие сведения:

  • Каталог (Directory) — Укажите разделяемый каталог, например /tmp.

  • Узел(узлы) (Host(s)) — Укажите названия узла (узлов), для которых вы предоставляете доступ к каталогу. Допустимые форматы имён описываются в разделе 22.3.2 Форматы имён узлов.

  • Основные права доступа (Basic permissions) — Укажите, будут ли для каталога назначены разрешения только на чтение или на чтение/запись.

Рисунок 22-2. Добавление ресурса

Вкладка Общие параметры (General Options) позволяет настроить следующие параметры:

  • Разрешить соединения с портов 1024 и выше (Allow connections from port 1024 and higher) — Службы, работающие с портами до 1024, должны быть запущены от имени root. Выберите этот вариант, что разрешить запуск NFS-службы другими пользователями. Этот параметр соответствует указанию insecure.

  • Разрешить небезопасную блокировку файлов (Allow insecure file locking) — Запрос на блокировку не требуется. Этот параметр соответствует указанию insecure_locks.

  • Запретить проверку подкаталогов (Disable subtree checking) — Если экспортируется подкаталог файловой системы, но не вся файловая система, сервер, проверяет, находится ли запрошенный файл в экспортированном подкаталоге. Эта проверка называется проверкой подкаталога. Отметьте этот пункт, чтобы запретить проверку подкаталогов. Если экспортируется вся файловая система, запрет проверки подкаталогов может увеличить скорость передачи. Этот параметр соответствует указанию no_subtree_check.

  • Синхронизировать операции записи по запросу (Sync write operations on request) — Включенный по умолчанию, этот параметр не позволяет серверу отвечать на запросы до того, как изменения, внесённые запросом будут записаны на диск. Этот параметр соответствует указанию sync. Если этот параметр не установлен, используется режим async.

    • Принудительно синхронизировать операции записи немедленно (Force sync of write operations immediately) — Не откладывает запись на диск. Этот параметр соответствует указанию no_wdelay.

Вкладка Доступ пользователей (User Access) позволяет настроить следующие параметры:

  • Рассматривать удалённого пользователя root как локального root (Treat remote root user as local root) — По умолчанию коды группы и пользователя root равны 0. Механизм смещения root сопоставляет группу и пользователя с кодом 0 с группой и пользователем anonymous, чтобы root на клиенте не получил привилегии root на NFS-сервере. Если выбран этот параметр, сопоставление root с anonymous не происходит и root на клиенте получает привилегии root в экспортированных каталогах. Выбор этого варианта может серьёзно повредить безопасности системы. Не выбирайте его, если это не абсолютно необходимо. Этот параметр соответствует указанию no_root_squash.

  • Рассматривать всех пользователей клиентов как анонимных пользователей (Treat all client users as anonymous users) — Если указан этот параметр, коды любых групп и пользователей сопоставляются с пользователем anonymous. Этот параметр соответствует указанию all_squash.

    • Укажите ID локального пользователя для анонимных пользователей (Specify local user ID for anonymous users) — Если выбран вариант Рассматривать всех пользователей клиентов как анонимных пользователей, этот параметр позволяет вам указать код анонимного пользователя. Этот параметр соответствует указанию anonuid.

    • Укажите ID локальной группы для анонимных пользователей (Specify local group ID for anonymous users) — Если выбран вариант Рассматривать всех пользователей клиентов как анонимных пользователей, этот параметр позволяет вам указать код группы анонимного пользователя. Этот параметр соответствует указанию anongid.

Чтобы отредактировать существующий NFS-раздел, выберите раздел из списка и нажмите кнопку Свойства (Properties). Чтобы удалить существующий NFS-раздел, выберите раздел из списка и нажмите кнопку Удалить (Delete).

После того, как вы добавите, измените или удалите из списка NFS-раздел и нажмёте OK, изменения вступают в силу немедленно — демон сервера перезагружается, а старый файл конфигурации сохраняется под именем /etc/exports.bak. Новая конфигурация записывается в файл /etc/exports.

Средство Настройка NFS-сервера (NFS Server Configuration Tool) читает и пишет непосредственно файл конфигурации /etc/exports. Таким образом, после работы с этой программой файл можно поменять вручную, а затем снова использовать эту программу (если синтаксис файла не был нарушен).

22.3.1. Настройка в командной строке

Если вы предпочитаете редактировать файлы конфигурации в текстовом редакторе, или у вас не установлена система X Window, вы можете изменить этот файл конфигурации непосредственно.

Каталогами, экспортируемыми NFS-сервером, управляет файл /etc/exports. Он имеет следующий формат:

directory hostname(options)

Единственный параметр, который следует указать — это sync или async (рекомендуется sync). Если вы указали sync, сервер не бедт отвечать на запросы раньше, чем запрошенные изменения будут записаны на диск.

Например,

/misc/export     speedy.example.com(sync)

позволит пользователям компьютера speedy.example.com подключить /misc/export со стандартными разрешениемя (только чтение), а

/misc/export     speedy.example.com(rw,sync)

позволит пользователям компьютера speedy.example.com подключить /misc/export с разрешениями на чтение и запись.

Допустимые форматы имён узлов описываются в разделе 22.3.2 Форматы имён узлов.

Список параметров, которые здесь можно указаться, вы найдёте в Справочном руководстве по Red Hat Enterprise Linux.

ВниманиеВнимание
 

Будьте осторожны, используя пробелы в файле /etc/exports. Если между именем компьютера и параметрами в скобках пробелы отсутствует, эти параметры будут относиться только к компьютеру. Если же между именем компьютера и параметрами присутствует пробел, эти параметры относятся ко всем остальным компьютерам. Например, рассмотрите следующие строки:

/misc/export speedy.example.com(rw,sync)
/misc/export speedy.example.com (rw,sync)

В первой строке пользователи компьютера speedy.example.com получают доступ на чтение-запись, а всем остальным доступ запрещён. Во второй строке пользователи компьютера speedy.example.com получают доступ только на чтение (по умолчанию), а все остальные получают доступ на чтение и запись.

Как только вы изменили файл /etc/exports, вы должны сообщить демону NFS об этом изменении, или перезагрузить файл конфигурации, с помощью следующей команды:

/sbin/service nfs reload

22.3.2. Форматы имён узлов

Имя узла (узлов) может задаваться в следующей форме:

  • Один компьютер — Полностью определённое доменное имя (которое сможет разрешить сервер), имя узла (которое сможет разрешить сервер) или IP-адрес.

  • Набор компьютеров, определённый знаками подстановки — Используйте символ * или ?, чтобы определить строку совпадения. Знаки подстановки не должны использоваться в IP-адресах, однако, они могут случайно заработать, если обратный поиск в DNS не удастся. При указаниии в полностью определённом доменном имени знаков подстановки, точки (.) в них не включаются. Например, строка *.example.com включает имя one.example.com, но не включает one.two.example.com.

  • IP-сети — Используйте запись вида a.b.c.d/z, где a.b.c.d — адрес сети, а z — число бит в маске сети (например, 192.168.0.0/24). Также допускается формат a.b.c.d/netmask, где a.b.c.d — сеть, а netmask — маска сети (например, 192.168.100.8/255.255.255.0).

  • Сетевые группы — В виде @group-name, где group-name — имя сетевой группы NIS.

22.3.3. Запуск и остановка сервера

На сервере, экспортирующем файловые системы NFS, должна работать служба nfs.

Просмотрите состояние демона NFS, выполнив следующую команду:

/sbin/service nfs status

Запустите демона NFS с помощью следующей команды:

/sbin/service nfs start

Остановите демона NFS с помощью следующей команды:

/sbin/service nfs stop

Чтобы служба nfs запускалась при загрузке, выполните следующую команду:

/sbin/chkconfig --level 345 nfs on

Определить службы, запускающиеся при загрузке системы вы также можете с помощью chkconfig, ntsysv или средства Настройка служб (Services Configuration Tool). За подробностями обратитесь к главе 20 Управление доступа к службам.