Участник:Petr-akhlamov/Pam mount.conf Manual RU

Материал из ALT Linux Wiki
Stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.

Имя

pam_mount.conf - Описание конфигурационного файла pam_mount

Обзор

Конфигурационный файл pam_mount определяет:

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

Начиная с версии pam_mount 0.18, конфигурационный файл записывается в формате XML, что позволяет упростить кодовую базу pam_mount и в то же время дает конечному пользователю свободу форматирования. Специальные символы <, > и &, используемые в самом XML, должны быть закодированы как <, > и &, соответственно;

Кроме того, в области "" символ " должен кодироваться как ", но эти три/четыре символа все равно вряд ли будут часто встречаться.

Не используйте комментарии внутри элементов, принимающих дословный текст, например <fusermount></fusermount>. Это не обрабатывается синтаксическим анализатором XML-дерева pam_mount.

Определения томов

Тома определяются с помощью элемента <volume>, который в основном принимает параметры в виде атрибутов, например:

<volume user="joe" fstype="nfs" server="fsbox" path="/home/%(USER)" mountpoint="/bigdisk/%(USER)" />

И определяет, что и для кого монтировать. Существует множество настроек, которые описаны в данном разделе.

Простой контроль пользователя

Следующие атрибуты управляют тем, будет ли смонтирован том после того, как пользователь вошел в систему. По умолчанию монтирование томов применяется ко всем пользователям, а указание атрибутов ограничивает его только заданными условиями, т.е. происходит их логическое объединение (лог. операция И). Существует более мощный и многословный механизм задания сложных условий, описанный ниже в разделе "Расширенное управление пользователями".


user="username"

Ограничить доступ к тому для указанного пользователя, идентифицируемого по имени


uid="number" или uid="number-number"

Ограничение доступа к тому для указанного пользователя (пользователей), идентифицированного по UID или диапазону UID.


pgrp="groupname"

Ограничение доступа к тому для пользователей, для которых группа, указанная в значении, является основной группой.


gid="number" или gid="number-number"

Ограничение доступа к тому для пользователей, для которых группа(ы), указанная в GID или диапазоне GID, является основной группой.


sgrp="groupname"

Ограничение доступа к тому для пользователей, которые являются членами группы, указанной в имени (либо как первичная, либо как вторичная группа).


Конфигурация тома

С помощью следующих атрибутов выбираются том-источник, место назначения, опции и т.д.


fstype="type"

Тип файловой системы, который может быть любым, понятным ядру, пользовательскому пространству и pam_mount. Если в fstype указан специальный тип pam_mount, то pam_mount будет работать с ним. В противном случае fstype передается в mount(8), который, в свою очередь, ищет в пользовательском пространстве помощника /sbin/mount.fstype и запускает его, если он существует, а в любом другом случае mount(8) вызовет mount(2) для непосредственного монтирования ядром. mount(8) знает об автоматическом fstype, что может быть полезно в некоторых случаях. Если не указывать атрибут fstype, то подразумевается fstype="auto". Обратите внимание, что монтирование с использованием auto может быть неудачным, если модуль ядра файловой системы еще не загружен, поскольку mount(8) будет проверять /proc/partitions.

Типы fstype cifs, smbfs, ncpfs, fuse, nfs и nfs переопределяются pam_mount, и мы запускаем соответствующие вспомогательные программы напрямую, а не вызываем mount(8) с базовым набором аргументов по умолчанию, который часто недостаточен для сетевых файловых систем. Подробнее см. раздел "Примеры" этой manpage ниже.


noroot="1"

Вызов программы mount без привилегий root. По умолчанию для fuse fstype установлено значение yes, поскольку по умолчанию, чтобы получить доступ к файлам, тома FUSE должны монтироваться от имени пользователя, вошедшего в систему.


server="name"

Определяет сервер, к которому следует подключаться в случае указания типов файловых систем - cifs, smbfs, ncpfs и nfs. Для всех остальных типов fs этот атрибут игнорируется. Вместо этого можно указать сервер в атрибуте path, но при этом необходимо придерживаться специального синтаксиса, требуемого конкретным типом fs. (Например, в CIFS используется "//server/path", а в NFS - "server:path" и т.д.).


path="path"

Этот обязательный атрибут задает расположение тома относительно сервера (если он указан).


mountpoint="directory"

Здесь указывается каталог назначения, в который монтируется том. "~" указывает на домашний каталог пользователя, который присутствует в базе данных passwd, в соответствии с семантикой sh. "~name" не поддерживается. Если этот атрибут опущен, то местоположение считывается из файла /etc/fstab, который также требует, чтобы path был устройством или исходным каталогом записи fstab.


options="..."

Здесь указываются опции монтирования. Если опция опущена и используется /etc/fstab (см. "mountpoint"), то опции также будут взяты из fstab.


ssh="0" или ssh="1"

Опция ssh включает (zerossh, см. pmt-fd0ssh(1)) для данного тома передачу пароля к ssh через механизм, специфичный для ssh. Включите эту опцию для любого монтирования с использованием исполняемых файлов SSH, например, ccgfs или sshfs. Не включайте ее ни для чего другого, иначе вход в систему, скорее всего, завершится.


cipher="cipher"

Устанавливает название шифра для тома. Используется с параметром fstype=crypt.


fskeycipher="ciphertype"

Имя шифра OpenSSL для ключа fskey. Используется с шифром crypt fstype (dm-crypt и LUKS). Для непосредственной передачи содержимого файла в cryptsetup без расшифровки OpenSSL может быть использовано специальное ключевое слово "none".


fskeyhash="hash"

Имя хэша OpenSSL для ключа fskey.


fskeypath="path"

Путь к ключу файловой системы.

Переменные

В атрибутах и командах (см. следующий раздел) могут использоваться специальные заполнители или переменные, обозначаемые %(name). Они подставляются во время вызова команды.

%(USER)

Расширяется до имени пользователя, входящего в систему.


%(DOMAIN_NAME), %(DOMAIN_USER)

Winbind использует специальные UNIX-имена пользователей в виде "domain\username", а %(DOMAIN_NAME) и %(DOMAIN_USER) обеспечивают их разделение на части. Это удобно, когда имя ресурса на MSAD-сервере совпадает с именем пользователя, например, <volume fstype="cifs" server="fsbox" path="%(DOMAIN_USER)"/>.


%(USERUID), %(USERGID)

Числовые UID и GID основной группы пользователя, вошедшего в систему. Получаются с помощью функции getpw*(), а не getuid(). Их удобно использовать в сочетании с опциями монтирования uid= или gid=, например, <volume options="uid=%(USERUID)"/>. Обратите внимание, что для монтирования smbfs или cifs не нужно указывать uid=%(USERUID), так как это уже автоматически выполняется программой pam_mount.


%(GROUP)

Имя группы для %(USERGID).


Все остальные переменные, которые вы можете найти в исходном коде, являются внутренними для pam_mount и, скорее всего, не будут использованы в процессе монтирования.