НАЗВАНИЕ
fixperm - Корректирует и инициализирует режим доступа и право
собственности на файлы.
СИНТАКСИС
fixperm [-cfgilnsvwDS [-d package]] specfile
ОПИСАНИЕ
fixperm выполняет согласование перечисляемых имен в каждой строке
файла спецификаций specfile c соответствующей спецификацией.
fixperm обычно используется для конфигурирования системы UNIX
после инсталляции. Непривилегированные пользователи могут
использовать fixperm только с опциями -n, -f, -D или -l. Для
использования других опций необходим статус привилегированного
пользователя.
Файл спецификаций имеет следующий формат: каждая непустая строка содержит либо комментарии, либо спецификацию элемента. Комментарием считается любой текст от знака # до конца строки. На одну строку полагается одна спецификация. Пользовательские и групповые идентификаторы должны задаваться в начале этого файла для каждого пользователя и для каждой группы, упоминаемых в этом файле. Синтаксис части определений прост: первое поле указывает на тип идентификатора (либо uid - пользовательский, либо gid - групповой), второе поле содержит именную ссылку на идентификатор и третье поле содержит соответствующий идентификатор. Например:
uid root 0
Спецификация элемента состоит из описателя пакета, спецификации разрешения, спецификации разрешений владельца и группы, количество связей с этим файлом, имени файла и необязательного номера тома.
Описатель пакета - это произвольная строка внутри комплекта дистрибуции. Пакет - это набор файлов.
За описателем пакета следует спецификация разрешения. Спецификация разрешения состоит из типа файла, численной спецификации разрешения. Спецификация элемента может быть одним из следующих символов:
Если спецификация элемента набрана строчной буквой, то связанный с ней файл - необязателен, и fixperm не возвратит сообщение об ошибке, если он отсутствует.
Численная спецификация разрешения соответствует схеме, описанной в chmod(1). Спецификации разрешений владельца и группы находится в третьей колонке и разделены косой чертой, например: "bin/bin". В четвертой колонке содержится количество связей. Если имеются связи с файлом, то в следующей строке содержится имя связанного файла и больше ничего. Пятая колонка содержит указание пути. Путь должен быть относительным, то есть не должен содержать косую черту "/". Шестая колонка используется только для специальных файлов и содержит большое(главное) и малое числа устройств или номера томов.
Опции
-c | Создает пустые файлы и каталоги. Также создает или модифицирует файлы устройств. |
-g | Задает для fixperm перечисление устройств, указанных в списке permlist (аналогично аргументу -f, задающему выдачу файлов на стандартный вывод). Не вызывает никаких изменений. |
-d package | Обрабатывает строки ввода, начиная со строки описателя заданного пакета (смотрите выше). Например, -dBASE обрабатывает только те элементы, которые принадлежат комплекту утилит пакета BASE. По умолчанию обрабатываются все строки. |
-u package | Как и в опции -d, с той разницей, что обрабатываются элемент, не являющиеся частью заданного пакета. |
-f | Выдает файлы только на стандартный вывод. Файлы назначения не модифицируются. |
-i | Выполняет проверку установки заданных пакетов. Возвращаемые значения:
|
-l | Выдает файлы и каталоги на стандартный вывод. Файлы назначения не модифицируются. |
-n | Выводит только сообщения об ошибках. Файлы назначения не модифицируются. |
-D | Выдает каталоги только на стандартный вывод. Файлы назначения не модифицируются. |
-v | Многозначная опция; жалуется, если выполняемые файлы не загружаются, не имеют фиксированного стека, не являются отдельными I и D или не анализируются. |
-s | В дополнение к остальным файлам списка permlist модифицирует специальные файлы устройств. |
-w | Выдает информацию о том, где (на каком томе) располагаются заданные файлы и каталоги. |
Следующие две строки формируют дистрибуцию и вызывают tar(1) для архивирования файлов только из perms/inst в /dev/sample:
/etc/fixperm -f /etc/perms/inst > list tar cfF /dev/sample listВ следующем примере задается выдача сообщений об ошибках для пакета BASE:
/etc/fixperm -nd BASE
ПРИМЕЧАНИЯ
Обычно fixperm запускается только программой-оболочкой во время
инсталляции.
СМ. ТАКЖЕ
custom(8)