- •Сетевая файловая система
- •Сетевая Файловая система на стороне сервера
- •Ответы на запросы монтнрования: демон mountd
- •Файловый сервис: демон nfsd
- •Intr Позволяет прерывать с клавиатуры заблокированные операции (и заставлять их выдать сообщение об ошибке).
- •Админимстративные соглашения по nfs
- •Взаимодействие nfs с сетями
- •Автоматическое монтированне
- •Прямые карты
- •Главные карты
- •Программа automount и дублирующие файловые системы
- •Карты amd
Прямые карты
В прямой карте перечисляются файловые системы, у которых нет общего префикса, например, /usr/src и /cs/tools. Прямая карта (скажем, /etc/auto. direct), которая описывает обе эти файловые системы программе automount, могла бы выглядеть так:
/usr/man chimchim; /usr/man
/cs/tools anchor:: /cs/tools
В данном случае каждое автомонтирование реализуется практически с помощью одной символической ссылки (и соответствующей точки авто-монтирования) для каждой файловой системы. Накладные расходы при этом возрастают, но появляется дополнительное преимущество: точка монтирования и реальная структура каталога всегда доступны для таких команд, как ls. Использование ls в каталоге с косвенно смонтированными файловыми системами часто затруднительно для пользователей, потому что automount не монтирует каталоги до обращения к их содержимому. Команда ls не обращается к содержимому автоматически монтируемых каталогов, поэтому и не вызывает их монтирования.
Главные карты
Главная карта — это перечень прямых и косвенных карт. Для каждой косвенной карты указывается корневой каталог, используемый для монтирования указанных в карте файловых систем. По умолчанию automount использует главную карту NIS.
Главная карта, использующая вышеупомянутые прямые и косвенные карты, имеет такой вид:
# Directory Map
/chimchim /etc/auto.chim
/- /etc/auto.direct
Первая колонка — имя локального каталога (для косвенной карты) или специальный знак /- (для прямой карты). Вторая колонка — имя файла, в котором хранится соответствующая карта. Если нужно, может быть создано несколько карт каждого типа.
Демон automount можно запустить одним из двух способов. Если главная карта называется /etc/auto.master, можно воспользоваться командой
automount -f /etc/auto.master &
Прямые и косвенные карты можно также указать в командной строке:
automount /- /etc/auto direct /chimchim /etc/auto, chim &
Программа automount и дублирующие файловые системы
В некоторых случаях доступные только для чтения файловые системы (например, /usr/man) могут быть идентичными на нескольких серверах. В этой ситуации можно дать automount указание выбрать сервер для сетевой файловой системы, основываясь на том, какой из них отвечает быстрее других. Если Вы планируете это делать, помните о четырех вещах.
Дублирующие файловые системы должны быть доступным только для чтения, например, /usr/man или /usr/local/X11. У демона автомонтирования нет способа синхронизации операций записи в группе серверов, поэтому редактируемые файловые системы дублировать невозможно.
Вопреки распространенному убеждению, при крахе сервера программа automount не может демонтировать активную файловую систему и заменить ее резервной. Ее способности ограничены выбором сервера при монтировании файловой системы (выбирается сервер, первым ответивший на ее запрос).
У Вас не будет возможности указать, какие серверы — основные, а какие — резервные. Программа automount выбирает сервер на основании собственных представлений о том, какие серверы "ближе всего" при данных сетевых номерах и времени реакции на исходный запрос.
Дублирующие файловые системы должны быть по-настояшему идентичны. В противном случае при замене файловой системы пользователи начнут волноваться и вести себя непредсказуемо.
Файл auto .direct, который определяет /usr/man как дублирующую файловую систему, обслуживаемую машинами chirnchim и band, будет выглядеть так:
/usr/man chirnchim, band: /usr/man
/cs/tools anchor: /cs/tools
Останов automount
Поскольку программа automount действует как процесс NFS-сервера, то прекращение ее выполнения командой kill -9 — неудачное решение, в результате которого Вашу систему может "заклинить". Если нужно уничтожить или перезапустить automount, обязательно используйте сигнал TERM (kill -15), чтобы automount до завершения своей работы успела освободить Вашу файловую систему.
amd, автомонтировшик получше
Программа amd — технически более совершенная замена демона automount фирмы Sun. У нее есть следующие преимущества над конкурентом:
• демон amd никогда не зависает при отказе сервера.
• amd посылает удаленным серверам через постоянные промежутки времени запросы "оставайся в живых" и ведет список тех серверов, которые доступны. Если какой-либо сервер отказал, последующие попытки доступа к файловой системе будут возвращать сообщение об ошибке "operation would block" (операция будет блокирована) без зависасания.
В amd нет патентованного исходного кода; эта программа перенесена более чем на двадцать версий ОС UNIX. Она включена в стандарт дистрибутивы BSDI и OSF/1.
amd обеспечивает поддержку ряда видов монтирования, которые не поддерживает automount (например, монтирование "объединени (union) каталогов).
Карты amd могут храниться в форматах различных баз данных, в том числе NIS,
Дистрибутив amd включает amq, запросно-манипулирующий инструмент, который позволяет отслеживать статус amd и посылать ему сом и команды (например, запросы принудительного демонтирования). Синтаксис карт amd более стандартизован, чем у automount. Для машин Вашей организации можно использовать один файл. демон amd построен на следующей концепции: каждый сервер т одну или несколько файловых систем, при этом каждая файловая система содержит один или несколько томов (связных совокупное файлов). Это позволяет упростить обработку подкаталогов по сравнению с automount.
