Совместное использование каталогов в сети
Прежде чем другие пользователи смогут получить доступ к вашим файлам/каталогам, вы должны сделать эти каталоги доступными для совместного использования в сети. Экспорт каталогов с NFS предполагает использование двух демонов, /usr/sbin/rpc.nfsd и /usr/sbin/rpc.mountd, и одного файла конфигурации /etc/exports. Файлы rpc.mountd и rрс .nfsd устанавливаются на большинстве систем. Если эти файлы отсутствуют, установите их из RPM-файла nf s-utils-0.3.1-5.1386 .rpm прилагаемого компакт-диска.
NFS и брандмауэры
Если в ходе установки Red Hat Linux 7.1 вы установили брандмауэр по умолчанию, он заблокирует совместное использование каталогов в NFS. Если ваш компьютер входит в локальную сеть и не имеет выходов в другие сети, можно отключить брандмауэр на нем. Брандмауэр действительно необходим только на компьютере, имеющем выход во внешние сети (например, на компьютере, играющем роль шлюза).
Большинство брандмауэров Linux отключается либо командой /etc/re, d/init.d/ipchains stop либо командой /etc/re.d/init .d/iptables stop. Но такое отключение действует только до следующей перезагрузки. Совсем отключить брандмауэр можно с помощью меню ntsysv. Выполните команду /usr/sbin/ntsysv. Как только возникнет меню Services (Сервисы), сбросьте флажки сервисов ipchains и iptables, как показано на следующей иллюстрации.
Если каталог, который вы хотите разрешить для совместного использования, расположен На компьютере-шлюзе, подключенном к вашему компьютеру и Интернету, то брандмауэр необходим. Даже работая с брандмауэром, лучше не использовать NFS из соображений безопасности. Но если вам все-таки необходимо использовать NFS для предоставления доступа к каталогам на компьютере-шлюзе, воспользуйтесь утилитой конфигурирования брандмауэра, описанной в гл. 31, чтобы открыть порты 111 и 2049. Таким образом будут открыты каналы, необходимые для Network File System.
Первый шаг к совместному использованию каталога в сети – редактирование файла /etc/ exports в текстовом редакторе и добавление по одной записи для каждого каталога, который вы планируете использовать совместно. Запись должна быть следующей.
/каталог хост (параметры)
Ниже приведен пример типичного файла /etc/exports.
# sample /etc/exports file / master(rw) .trusty(rw,no_root_squash) /projects proj* .local..domain (rw) /usr *.local.domain(ro) /home/joe pcOOl(rw,all_squash,anonuid=150,anongid=100) /pub (ro,insecure,all_sguash) /pub/private (noaccess)
Рассмотрим этот файл построчно.
Строка 1. Строка комментариев, обозначенная знаком диеза (#), игнорируется.
Строка 2. Двум компьютерам даны различные уровни доступа к каталогу /: master – с правом чтения и записи (опция rw), trusty – с правом чтения и записи и правом полного доступа ко всем файлам и подкаталогам для пользователя root (опция no_root_squash). Пользователь root компьютера trusty имеет те же права, что и пользователь root локальной системы.
Строка 3. Любому хост-компьютеру, имя которого начинается с символов proj и который является частью домена local .domain, предоставляются права чтения и записи в каталоге /projects.
Строка 4. Любому хост-компьютеру в домене local .domain предоставляется право на чтение (опция го) каталога /usr.
Строка 5. Хост-компьютер рс 0 01 получает права на чтение и запись в каталог / home / j oe. Все пользователи, использующие эту точку монтирования с компьютера pc001, считаются анонимными пользователями (опция all_squash) с ID пользователя 150 и ID группы 150 (опции anonuid=150 и anongid=150).
Строка 6. Всем хост-компьютерам предоставлено право доступа к каталогу /pub. Все пользователи считаются анонимными и получают право чтения. Опция insecure позволяет клиентам, которые не используют зарезервированный порт ТСР/IР для NFS, осуществлять доступ к этой точке монтирования.
Строка 7. Всем хост-компьютерам запрещен доступ к каталогу /pub/private (опция noaccess).
С другими опциями для файла /etc/exports можно ознакомиться в руководстве, используя команду:
$ man exports
Если каталог для экспорта определен как /etc/exports, необходимо перезапустить процессы rpc .nf sd и rpc .mountd (обычно они выполняются во время начальной загрузки). Сначала используется команда ps для проверки ID каждого процесса.
$ ре aux | grep rpc.nfsd root 15-03 0.2 0.8 872 508? S 22:25 0:00 /usr/sbin/rpc.nfsd $ ps aux | grep rpc.mountd root 1105 0 0.7 836 500? S 22:25 0:00 /usr/sbin/rpc.mountd
Затем следует уничтожить и перезапустить процессы.
$ kill 1103 1105; /usr/sbin/rpc.nfsd; /usr/sbin/rpc.mountd
Предупреждение
Выполните на вашем компьютере указанные выше команды ps aux. С учетом параметров вашего компьютера, числа, выдаваемые командами ps aux, должны отличаться от 1103 и 1105.
Теперь для доступа удаленных пользователей сети работают новые правила экспорта.
Совет
В некоторых дистрибутивах Linux для перезапуска rpc.nfsd и rpc .mountd необходимо перезапустить демон nfs. Например, в Red Hat Linux 7.1 следует выполнить команду /etc/re.d/init.d/nfs restart в режиме корневого пользователя.