Назад | Перейти на главную страницу

selinux, файл не соответствует file_contexts.local

semanage fcontext  -a -t puppet_etc_t "/etc/puppet/environments(/.*)?"
cat  /etc/selinux/targeted/contexts/files/file_contexts.local
# This file is auto-generated by libsemanage
# Do not edit directly.

/etc/puppet/environments(/.*)?    system_u:object_r:puppet_etc_t:s0

 touch /etc/puppet/environments/hello1
 ls -Z /etc/puppet/environments/hello1 
 -rw-r--r--. root root unconfined_u:object_r:puppet_etc_t:s0 /etc/puppet/environments/hello1

почему этот файл создан как «unlimited_u», а не как «system_u»? Как я могу это изменить? Спасибо.

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

Поскольку в целевой политике пользователя почти всегда игнорируют, это действительно не проблема.

Если вы действительно хотите его изменить, вы можете использовать chcon сделать это. Например:

# ls -Z /etc/nsswitch.conf.ipabkp
-rw-r--r--. root root unconfined_u:object_r:etc_t:s0   /etc/nsswitch.conf.ipabkp
# chcon -u system_u /etc/nsswitch.conf.ipabkp 
# ls -Z /etc/nsswitch.conf.ipabkp
-rw-r--r--. root root system_u:object_r:etc_t:s0       /etc/nsswitch.conf.ipabkp