On 9/5/19 7:57 PM, Joe MacDonald wrote:
[[meta-selinux][PATCH] selinux-autorelabel: disable enforcing mode before
relabel] On 19.09.05 (Thu 16:57) Yi Zhao wrote:
The commit b0d31db104d9a4e94bc1409c2ffcc1d82f4a780f introduced an issue
when first boot with bootparams="selinux=1 enforcing=1". At first boot,
all files are unlabeled including /sbin/fixfiles. The relabel operation
is not permitted under enforcing mode. Set /sys/fs/selinux/enforce to 0
to ensure the enforcing mode is disabled before relabel.
Did you try this with '/usr/sbin/setenforce 0' instead? The rationale
makes sense but going straight at sysfs like that isn't the right
approach intuitively. If that's not working, please just include a bit
of an explanation for why this is the best option.
It also works with setenforce.
I referred to the selinux-autorelabel script on Fedora 30, it uses `echo
"0" > /sys/fs/selinux/enforce` to disables enforcing mode:
cat /usr/libexec/selinux/selinux-autorelabel
[snip]
32 relabel_selinux() {
33 # if /sbin/init is not labeled correctly this process is
running in the
34 # wrong context, so a reboot will be required after relabel
35 AUTORELABEL=
36 . /etc/selinux/config
37 echo "0" > /sys/fs/selinux/enforce
38 [ -x /bin/plymouth ] && plymouth --quit
39
[snip]
//Yi
Thanks.
-J.
Signed-off-by: Yi Zhao <yi.z...@windriver.com>
---
recipes-security/selinux/selinux-autorelabel/selinux-autorelabel.sh | 1 +
1 file changed, 1 insertion(+)
diff --git
a/recipes-security/selinux/selinux-autorelabel/selinux-autorelabel.sh
b/recipes-security/selinux/selinux-autorelabel/selinux-autorelabel.sh
index 154dad1..cb40971 100644
--- a/recipes-security/selinux/selinux-autorelabel/selinux-autorelabel.sh
+++ b/recipes-security/selinux/selinux-autorelabel/selinux-autorelabel.sh
@@ -13,6 +13,7 @@ fi
# If /.autorelabel placed, the whole file system should be relabeled
if [ -f /.autorelabel ]; then
echo "SELinux: /.autorelabel placed, filesystem will be relabeled..."
+ echo "0" > /sys/fs/selinux/enforce
${FIXFILES} -F -f relabel
/bin/rm -f /.autorelabel
echo " * Relabel done, rebooting the system."
--
2.7.4
--
_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto