Согласно вот этому руководству, пытаюсь заставить заработать сабжевую связку.
Файловая система, в т.ч. /dev, размечена.
Все ключевые части системы имеют нужный контекст, как описано тут.
Однако, при попытке загрузиться с параметром ядра
enforcing=1
Проблемы начинаются после старта udev: пишет, что не удаётся получить доступа к usbmon0, и прочим устройствам из /dev, присутствующим в моей системе, далее, диски не монтируются и в результате, я получаю систему без подмонтированных /usr, /var, /opt, /home.
Впрочем, того, что остаётся на корне, достаточно для того, чтобы прочитать /var/log/dmesg.
[ 6.792371] SELinux: initialized (dev rootfs, type rootfs), uses genfs_contexts
[ 6.792381] SELinux: initialized (dev sysfs, type sysfs), uses genfs_contexts
[ 6.794841] type=1403 audit(1268742832.794:2): policy loaded auid=4294967295 ses=4294967295
[ 8.173275] SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs
[ 8.182223] type=1400 audit(1268742834.182:3): avc: denied { read } for pid=120 comm="restorecon" name="console" dev=sda3 ino=140 scontext=system_u:system_r:setfiles_t tcontext=system_u:object_r:console_device_t tclass=chr_file
[ 8.182277] type=1400 audit(1268742834.182:4): avc: denied { read } for pid=120 comm="restorecon" path="/dev/console" dev=sda3 ino=140 scontext=system_u:system_r:setfiles_t tcontext=system_u:object_r:console_device_t tclass=chr_file
[ 8.182352] type=1400 audit(1268742834.182:5): avc: denied { read } for pid=120 comm="restorecon" path="/dev/console" dev=sda3 ino=140 scontext=system_u:system_r:setfiles_t tcontext=system_u:object_r:console_device_t tclass=chr_file
[ 8.302653] type=1400 audit(1268742834.302:6): avc: denied { write } for pid=127 comm="bash" name="null" dev=tmpfs ino=1552 scontext=system_u:system_r:initrc_t tcontext=system_u:object_r:device_t tclass=chr_file
[ 8.464670] type=1400 audit(1268742834.464:7): avc: denied { read write } for pid=136 comm="write_root_link" name="tty" dev=tmpfs ino=1551 scontext=system_u:system_r:initrc_t tcontext=system_u:object_r:device_t tclass=chr_file
[ 8.465228] type=1400 audit(1268742834.465:8): avc: denied { read write } for pid=136 comm="write_root_link" name="console" dev=tmpfs ino=1549 scontext=system_u:system_r:initrc_t tcontext=system_u:object_r:device_t tclass=chr_file
[ 8.524298] type=1400 audit(1268742834.524:9): avc: denied { write } for pid=140 comm="bash" name="null" dev=tmpfs ino=1552 scontext=system_u:system_r:initrc_t tcontext=system_u:object_r:device_t tclass=chr_file
[ 8.841506] type=1400 audit(1268742834.841:10): avc: denied { read write } for pid=146 comm="modprobe" path="/dev/null" dev=tmpfs ino=1552 scontext=system_u:system_r:insmod_t tcontext=system_u:object_r:device_t tclass=chr_file
[ 8.841551] type=1400 audit(1268742834.841:11): avc: denied { read write } for pid=146 comm="modprobe" path="/dev/null" dev=tmpfs ino=1552 scontext=system_u:system_r:insmod_t tcontext=system_u:object_r:device_t tclass=chr_file
[ 13.345301] SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs
[ 13.345716] SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs
[ 13.345879] type=1400 audit(1268742839.345:206): avc: denied { write } for pid=422 comm="mount" name="blkid.tab" dev=sda3 ino=5795 scontext=system_u:system_r:mount_t tcontext=system_u:object_r:etc_t tclass=file
[ 13.462510] SELinux: initialized (dev binfmt_misc, type binfmt_misc), uses genfs_contexts
[ 15.071030] type=1400 audit(1268742843.187:207): avc: denied { write } for pid=450 comm="bash" name="lock" dev=sda3 ino=5804 scontext=system_u:system_r:initrc_t tcontext=root:object_r:var_t tclass=dir
[ 15.237106] type=1400 audit(1268742843.354:208): avc: denied { read } for pid=467 comm="restorecon" name="console" dev=sda3 ino=140 scontext=system_u:system_r:setfiles_t tcontext=system_u:object_r:console_device_t tclass=chr_file
[ 15.237208] type=1400 audit(1268742843.354:209): avc: denied { read } for pid=467 comm="restorecon" path="/dev/console" dev=sda3 ino=140 scontext=system_u:system_r:setfiles_t tcontext=system_u:object_r:console_device_t tclass=chr_file
Правильно ли я понимаю, что для исправления всего этого, мне надо вручную создавать политики во время загрузки в permissive mode и разрешать соответствующий доступ? Интересно, почему мейнтейнеры не сделали этого сразу?…
Народ, кто из вас настраивал SELinux также, как я, достаточно ли информации об этом в вышеприведённой ссылке или же есть более информативные материалы?