Таблицами (map-файлами) автомонтирования могут являться файлы,
либо таблицы NIS, на которые ссылается основная (master) таблица
автомонтирования (см.
auto.master(5)).
В таблицах описывается расположение файловых систем, которые
автоматически подмонтируются к базовым точкам монтирования
(задаваемых в файле auto.master). Здесь описывается формат
таблицы
sun,
для другого формата (например, hesiod) этот документ не
применим.
Таблицы можно редактировать `на лету' -- эти изменения будут учтены
при следующей операции с данной таблицей. Однако это не относится
к основной таблице
auto.master!
ФОРМАТ
Здесь даётся описание формата текстового файла. Могут существовать и
другие способы определения этих файлов. Все пустые строки и строки,
начинающиеся с #, игнорируются. Основной формат строки в такой таблице
следующий:
key [-options] location
key
При косвенном (относительном) монтировании это часть пути между
точкой монтирования и путём в смонтированной файловой системе.
Как правило, ключ можно рассматривать как имя подкаталога ниже
точки монтирования, например
/mountpoint/key/path/to/file
При прямом (абсолютном) монтировании в качестве ключа указывается
полный путь к точке монтирования. Такая таблица всегда ассоциирована
с точкой монтирования /- в основной (master) таблице.
options
Опции не обязательны. Опции также можно задать в файле
auto.master
-- в этом случае оба значения аккумулируются (это отличается от SunOS).
Options -- это список опций, разделяемых запятыми, для команды
mount(8).
Имеется две специальных опции:
-fstype=,
используемая для указания типа файловой системы, если файловая система
не является NFS по умолчанию. Эта опция обрабатывается
автомонтировщиком и не передаётся команде mount.
-strict
используется для обработки ошибок монтирования ФС как фатальных. Это
важно при монтировании нескольких файловых систем (`multimounts').
Если эта опция задана, то ни одна файловая система не будет
монтироваться, если возникнет ошибка монтирования какой-либо ФС.
location
Определяет монтируемую файловую систему. В большинстве случаев это
будет NFS том и для указания удалённой системы и монтируемого пути
используется обычная нотация
host:pathname.
Если монтируемая ФС начинается с / (например, локальные записи
/dev
или ресурсы smbfs), то необходим префикс : (например,
:/dev/sda1).
В первой строке у нас удалённое монтирование NFS каталога kernel на
ftp.kernel.org.
Это монтирования read-only. Вторая строка монтирует том ext2 на
локальном ide устройстве. Третья строка делает доступным для
автомонтирования экспортируемого ресурса Windows-машины. Остальные
должны быть понятны сами по себе. Последняя запись (последние три
строки) -- это пример multi-map (см. ниже).
При использовании автомонтирования файловой системы, не поддерживающей
разрешения доступа (access permissions), например, fat, то как
правило пользователи не могут писать в такую ФС, поскольку она
монтируется пользователем root. Эту проблему можно решить
передачей опции gid=<gid>, например, gid=floppy. Тогда ФС
монтируется с группой floppy вместо root. Затем добавляем
пользователей в эту группу, и они могут писать в эту ФС. Вот образец
записи в таблицу autofs:
Символ & в
location
заменяется на значение поля
key,
соответствующего строке (которая, возможно, имеет смысл только вместе
с групповым ключом).
Wildcard Key (групповой ключ)
Символ * в поле
key
косвенных таблиц соответствует всем ключам. Следующая запись
демонстрирует полезность такого ключа:
* &:/home/&
Это позволяет вам получить доступ ко всем домашним каталогам локальных
хостов, используя путь
/mountpoint/hostname/local-path.
Variable Substitution (подмена переменных)
Следующие специальные переменные с префиксом $ будут заменены в полях
key и location таблицы автомонтирования, как результат shell-скриптов
(для отделения имен можно использовать круглые скобки):
ARCH Architecture (uname -m)
CPU Processor Type
HOST Hostname (uname -n)
OSNAME Operating System (uname -s)
OSREL Release of OS (uname -r)
OSVERS Version of OS (uname -v)
Можно также определить дополнительные записи с помощью табличной
опции -Dvariable=Value к
automount(8).
Executable Maps Исполняемые таблицы
Таблицу можно отметить как исполняемую. Начальный скрипт, который
обрабатывает таблицу auto.master, будет передавать ее автомонтировщику как таблицу
program.
Таблица
program
будет вызвана как скрипт с ключом в качестве аргумента. Она может
ничего не возвращать в случае ошибки или одни или несколько строк,
содержащих таблицу. (с \ , экранирующим окончания строк).
Для использования таблиц
program
демон
automount(8)
необходимо запустить с типом program вместо типа file. Это
реализовано в скрипте инициализации.
В дополнение к подавлению вывода исполняемая таблица может возвращать
код ошибки. Весь вывод посланный на stderr регистрируется в системных журналах.
Множественное монтирование
Для указания нескольких файловых систем для монтирования можно использовать
multi-mount map.
Она имеет вид:
Это можно расположить на нескольких строках, отменяя разрыв строки с
помощью `\'.
При наличии опции монтирования для каждой точки монтирования
добавляются к опциям монтирования по умолчанию.
Реплицируемый сервер
Несколько реплицируемых хостов, один путь:
<path> host1,host2,hostn:/path/path
Несколько хостов, некоторые с одинаковым путём, некоторые - с другим:
<path> host1,host2:/blah host3:/some/other/path
Несколько реплицируемых хостов, различные (потенциально) пути:
<path> host1:/path/pathA host2:/path/pathB
Несколько взвешенных реплицируемых хостом с одинаковым путём:
<path> host1(5),host2(6),host3(1):/path/path
Несколько взвешенных реплицируемых хостов с разными (потенц.) путями:
<path> host1(3):/path/pathA host2(5):/path/pathB
Всё остальное под вопросом и не поддерживается, но эти вариации также
будут работать:
<path> host1(3),host:/blah
НЕ ПОДДЕРЖИВАЕТСЯ
Эта версия автомонтировщика поддерживает прямые таблицы только для
типов FILE, NIS и LDAP, и обрабатывает реплицируемые ФС в стиле SunOS
только в том объёме, в котором это делает
mount(8).
ПРЕДОСТЕРЕЖЕНИЕ
В отличие от синтаксиса multi-mount в Sun, точка монтирования является
обязательной для всех монтирований.
Эта страница руководства была написана Кристофером Ламитером
(Christoph Lameter) <[email protected]> для системы Debian GNU/Linux.
Отредактировано Питером Энвином (H. Peter Anvin) <[email protected]>,
Джереми Фитцхардингом (Jeremy Fitzhardinge) <[email protected]> и
Айэном Кентом (Ian Kent) <[email protected]>.
Перевод на русский язык выполнил Александр Саввин <[email protected]>