setfiles
Section: Команда пользователя SELinux (8)
Updated: 10 июня 2016
Page Index
ИМЯ
setfiles - установить SELinux-контексты безопасности файлов.
ОБЗОР
setfiles
[
-c
policy]
[
-d]
[
-l]
[
-m]
[
-n]
[
-e
directory]
[
-p]
[
-s]
[
-v]
[
-W]
[
-F]
[
-I|
-D]
spec_file
pathname ...
ОПИСАНИЕ
На этой странице руководства приводится описание программы
setfiles.
Эта программа используется в основном для инициализации полей контекста безопасности (расширенных атрибутов) в одной или нескольких файловых системах (или их частях). Обычно она впервые запускается как часть процесса установки SELinux (этап, который называется проставлением меток).
Также можно запустить её в любой другой момент, чтобы исправить некорректные метки, добавить поддержку для недавно установленной политики или, используя параметр
-n
, пассивно проверить, соответствуют ли установленные контексты файлов тем контекстам, которые указаны в активной политике (поведение по умолчанию) или в какой-либо другой политике (см. параметр
-c
).
Если объект файла не имеет контекста,
setfiles
запишет контекст по умолчанию в расширенные атрибуты объекта файла. Если объект файла имеет контекст,
setfiles
изменит только ту часть контекста безопасности, которая относится к типу.
Параметр
-F
позволяет принудительно заменить контекст целиком.
ПАРАМЕТРЫ
- -c
-
проверить действительность контекстов относительно указанной двоичной политики.
- -d
-
показать, какая спецификация соответствует каждому из файлов.
- -e directory
-
исключить каталог (чтобы исключить более одного каталога, этот параметр необходимо использовать соответствующее количество раз).
- -f infilename
-
infilename
содержит список файлов для обработки. Используйте
``-''
для
stdin.
- -F
-
принудительно сбросить контекст, чтобы обеспечить соответствие file_context для настраиваемых файлов и соответствие контексту файлов по умолчанию для остальных файлов (меняются части контекста, связанные с пользователем, ролью, диапазоном, а также тип).
- -h, -?
-
показать сведения об использовании и выйти.
- -i
-
игнорировать файлы, которые не существуют.
- -I
-
игнорировать дайджест, чтобы принудительно проверить метки, даже если хранимый дайджест SHA1 соответствует дайджесту SHA1 файлов спецификации. Затем (при условии отсутствия ошибок) дайджест будет обновлён. Более подробные сведения доступны в разделе
ПРИМЕЧАНИЯ.
- -D
-
установить или обновить дайджесты SHA1 для любых каталогов. Используйте этот параметр, чтобы включить использование расширенного атрибута
security.restorecon_last.
- -l
-
записывать изменения меток файлов в системный журнал.
- -m
-
не выполнять чтение
/proc/mounts
для получения списка монтирований без seclabel, которые следует исключить из проверок с повторным проставлением меток. Установка этого параметра полезна при наличии смонтированной файловой системы без seclabel, в которой в расположенном ниже каталоге смонтирована файловая система с seclabel.
- -n
-
не изменять метки файлов (пассивная проверка).
- -o outfilename
-
этот параметр устарел и больше не поддерживается.
- -p
-
показывать ход выполнения, выводя количество обработанных файлов (единица измерения - блок размером 1 КБ (то есть 1000 файлов)). Если выполняется повторное проставление меток во всей ОС, будет показан примерный процент выполнения. Обратите внимание, что параметры
-p
и
-v
являются взаимоисключающими.
- -q
-
этот параметр устарел, ранее использовался для прекращения вывода параметров ассоциаций индексных дескрипторов (inode).
- -r rootpath
-
использовать альтернативный корневой путь. Используется в meta-selinux для сборок OpenEmbedded/Yocto, чтобы проставить метки для файлов в каталоге
rootpath
таким образом, как если бы они были в
/
- -s
-
взять список файлов из стандартного ввода, а не использовать путь из командной строки (эквивалентно
``-f -''
).
- -v
-
показать изменения меток для файлов и вывести параметры ассоциаций индексных дескрипторов (inode).
Обратите внимание, что параметры
-v
и
-p
являются взаимоисключающими.
- -W
-
показать предупреждения о записях, для которых не обнаружены соответствующие файлы, с помощью вывода результатов
selabel_stats(3).
- -0
-
предполагается, что разделителем для элементов ввода является символ нуля
(вместо пробела). Символы кавычек и обратной косой черты также считаются обычными символами, которые могут формировать допустимый ввод.
Этот параметр также отключает строку конца файла (end-of-file string), она обрабатывается, как любой другой аргумент. Это полезно, если элементы ввода содержат пробелы, кавычки или обратные косые черты. Параметр
-print0
GNU
find
производит ввод, подходящий для этого режима.
АРГУМЕНТЫ
- spec_file
-
Файл спецификации, содержащий строки следующего вида:
-
regexp
[type]
context |
<<none>>
-
Регулярное выражение привязывается с обоих концов. Необязательное поле
type
указывает тип файла (показывается в поле режима по команде
ls(1)
), например,
--
для соответствия только обычным файлам или
-d
для соответствия только каталогам.
context
может быть обычным контекстом безопасности или строкой
<<none>>
(чтобы указать, что контекст файла не следует изменять).
Используется последняя соответствующая спецификация. Если на файл имеется несколько жёстких ссылок, которые соответствуют разным спецификациям, и эти спецификации означают разные контексты безопасности, будет показано предупреждение, но для файла всё равно будет проставлена метка на основе последней соответствующей спецификации, отличной от
<<none>>.
- pathname ...
-
Путь к корневому каталогу каждой файловой системы, в которой следует повторно проставить метки, или конкретный каталог в файловой системе, по которому следует рекурсивно спуститься и повторно проставить метки, или путь к файлу, для которого следует повторно проставить метку.
Не используется, если используется параметр
-f
или
-s .
ПРИМЕЧАНИЯ
- 1.
-
setfiles
следует по символическим ссылкам и рекурсивно применяется к каталогам.
- 2.
-
Если в
pathname
указан корневой каталог, установлен параметр
-v
, а также запущена система аудита, в журнал с меткой сообщения
FS_RELABEL
автоматически записывается событие аудита, которое содержит сообщение о том, что произошло "массовое повторное проставление меток".
- 3.
-
Для повышения производительности при рекурсивном повторном проставлении меток в файловых системах используется параметр
-D
команды
setfiles .
Он обеспечивает сохранение дайджеста SHA1 файла спецификации
spec_file
в расширенном атрибуте с именем
security.restorecon_last
для каталога, указанного в соответствующем пути
pathname ...
, после успешного завершения повторного проставления меток. Этот дайджест будет проверен, если команда
setfiles
-D
будет перезапущена с теми же параметрами
spec_file
и
pathname
Подробные сведения доступны в
selinux_restorecon(3).
Параметр
-I
позволяет игнорировать дайджест SHA1 из каждого каталога, указанного в
pathname ...
, и, при условии, что НЕ установлен параметр
-n
, для файлов будут необходимым образом повторно проставлены метки, а дайджест затем будет обновлён (если не будет ошибок).
СМОТРИТЕ ТАКЖЕ
restorecon(8),
load_policy(8),
checkpolicy(8)
АВТОРЫ
Эта man-страница была написана Russell Coker <
russell@coker.com.au>.
Программа была написана Stephen Smalley <
sds@tycho.nsa.gov>.
Перевод на русский язык выполнила Герасименко Олеся <
gammaray@basealt.ru>