Файл экспорта

В то время как вышеупомянутые опции обращаются к NFS конфигурации клиента, имеется различное множество опций на стороне сервера при выборе конфигурации per-client. Эти опции должны быть установлены в файле /etc/exports. По умолчанию, mountd не позволяет кому угодно устанавливать каталоги из локального хоста, что является довольно разумной позицией. Для того, чтобы разрешить одному или большему количеству хостов установить nfs каталог, он должен быть экспортирован, то есть определен в файле экспорта. Типовой файл может выглядеть следующим образом:

# exports file for vlager
/home             vale(rw) vstout(rw) vlight(rw)
/usr/X386         vale(ro) vstout(ro) vlight(ro)
/usr/TeX          vale(ro) vstout(ro) vlight(ro)
/                 vale(rw,no root squash)
/home/ftp         (ro)

Каждая линия определяет каталог и хост, которому разрешено его устанавливать. Имя хоста - обычно полностью квалифицированное название области, но может содержать * и ? универсальные символы. Например, lab*.foo.com соответствует lab01.foo.com также как и laber.foo.com. Если имя хоста не указано, как с каталогом /home/ftp в примере выше, то любому хосту разрешено установить этот каталог.

При проверке клиентского хоста против файла экспорта, mountd будет искать hostname клиента используя gethostbyaddr(2) вызов. С DNS, этот вызов возвращает каноническое hostname клиента, так что вы должны удостовериться, что не используются псевдонимы в экспорте. Без использования DNS, возвращенное имя - первое имя хоста, найденное в файле хоста, которое соответствует адресу клиента.

Имя хоста сопровождается произвольным, отделенным запятой, списком флагов, приложенных в скобках. Эти флаги могут принимать следующие значения:

Ошибка, анализирующая файл экспорта, сообщает daemon syslogd's оборудованию каждый раз, когда nfsd или mountd запускаются.

Заметьте, что имена хостов получены из IP-адреса клиента обратным отбором, поэтому вы должны иметь правильно сконфигурированное решающее устройство. Если вы используете BIND и очень обеспокоены безопасностью, вы должны включить проверку spoof в вашем файле host.conf.

Linux Automounter

Иногда это расточительно устанавливать все NFS-значения пользователей, к которым они возможно захотят обратиться: либо из-за большого числа значений, которые должны быть установлены, либо из-за времени, которое потребовалось бы при запуске. Жизнеспособный вариант для этого – так называемый automounter. Это демон, который автоматически устанавливает любое NFS-значение по мере необходимости и освобождает его, если оно не использовалось в течение некоторого времени. Одна из преимуществ automounter - возможность установить определенное значение из любого места. Например, вы можете сохранить копии ваших Х-программ и файлов поддержки на нескольких хостах и все остальные хосты установлены через NFS. При использовании automounter, вы можете указать все три из них для установки на /usr/X386; automounter затем попробует установить любой из них, пока одна из попыток не преуспевает.

Automounter, обычно используемый с Linux, называется amd. Сначала он был написан Jan-Simon Pendry и был портирован на Linux Rick Sladkey. Текущая версия - amd-5.3. Для более подробного описания amd, пожалуйста, обратитесь к источникам; они содержат файл texinfo с очень подробной информацией.