другого компьютера. Обслуживанием экспорта занимаются следующие демоны:
♦ rpc.mountd, обрабатывающий запрос на монтирование;
♦ rpc.nfsd, обеспечивающий доступ к файлам смонтированной файловой системы;
♦ rpc.lockd и rpc.statd, управляющие блокировкой файлов;
♦ rpc.rquotad, контролирующий квоты на экспортируемых файловых системах.
Эти демоны устанавливаются из пакета nfs-utils в каталог /sbin (реже /usr/sbin). Запускаются они в ходе начальной загрузки, и сценарии запуска находятся в том же пакете.
Как и другие RPC-службы, NFS зависит от демона portmap (или rpc.portmap), который должен запускаться первым. Загрузочные сценарии большинства современных дистрибутивов включают запуск этого демона. Если в вашем дистрибутиве демоны NFS по умолчанию не запускаются, отредактируйте загрузочные сценарии, организовав запуск в следующем порядке:
♦ rpc.portmap;
♦ rpc.mountd, rpc.nfsd;
♦ rpc.statd, rpc.lockd (с ядром выше 2.2.18 этот демон вызывается из nfsd, и отдельно запускать его не нужно), rpc.rquotad.
Если на вашем компьютере запущен также сервер DNS, проследите за тем, чтобы сервер DNS запускался после демонов NFS. При соблюдении данного условия гарантируется корректная работа NFS.
Конфигурационным файлом сервера NFS служит /etc/exports, содержащий список экспортируемых файловых систем. В каждой строке записан один экспортируемый каталог, узел или домен, которому разрешено монтировать этот каталог, и — без пробела, в скобках, через запятую, — спецификации экспорта. Длинные строки можно разбивать на несколько строк при помощи символа обратного слэша.
Разрешается экспортировать любые каталоги, а не только корневые каталоги физических файловых систем. Единственное ограничение — файловые системы, физически расположенные на разных устройствах (разделах), должны экспортироваться по отдельности.
Листинг 12.1. Примерный файл /etc/exports
/pub (ro,insecure,all_squash)
/home/den denhome.domain.com(rw)
/mnt/cdrom (ro)
/mnt/cdrom comp11.domain.com(noaccess)
Давайте разберемся в данной конфигурации. К каталогу /pub имеют доступ в режиме «только чтение» все компьютеры сети. К каталогу /home/den доступ в режиме чтения и записи имеется только с компьютера denhome.domain.com. К каталогу /mnt/cdrom доступ в режиме «только чтение» имеют все компьютеры, кроме comp11.domain.com.
Другие спецификации экспорта перечислены в таблице 12.2.
Спецификации в файле /etc/ехports Таблица 12.2
| Спецификация | Назначение |
|---|---|
| secure | Требует, чтобы запросы исходили только из портов безопасного диапазона — с номерами, меньшими 1024. В Linux доступ к таким портам имеет только пользователь root. Значение secure по умолчанию включено |
| insecure | Отключает значение secure |
| ro | Устанавливает для экспортируемого каталога доступ в режиме «только чтение» |
| rw | Устанавливает для экспортируемого каталога доступ в режиме чтения и записи |
| noaccess | Запрещает доступ к конкретной ветви (подкаталогу) экспортируемого дерева каталогов |
| link_absolute | Оставляет все символические ссылки без изменений. Значение включено по умолчанию |
| link_relative | Конвертирует абсолютные ссылки в относительные |
| squash_uidssquash_gids | Указанные идентификаторы групп и пользователей будут конвертированы в анонимные |
| all_squash | Все идентификаторы групп и пользователей будут конвертированы в анонимные. При этом всем им будет запрещен доступ к экспортируемым каталогам. По умолчанию так не делается |
| no_all_squash | Значение, обратное all_squash. Активизировано по умолчанию |
| root_squash |
