如何在recovery mode下单独关闭selinux 而不影响normal mode
时间:10-02
整理:3721RD
点击:
[DESCRIPTION]
可以在开机一启动就设置selinux模式, 但这是针对所有模式。
如果只想在recovery mode下关闭而不影响normal mode,以下提供方法。
[SOLUTION]
修改/bootable/bootloader/lk/app/mt_boot/mt_boot.c
+if(g_boot_mode == RECOVERY_BOOT){ //<----添加这行
+sprintf(commanline, "%s androidboot.selinux=permissive", commanline); //<----添加这行
+}else{ //<----添加这行
#ifdef SELINUX_STATUS
#if SELINUX_STATUS == 1
sprintf(commanline, "%s androidboot.selinux=disabled", commanline);
#elif SELINUX_STATUS == 2
sprintf(commanline, "%s androidboot.selinux=permissive", commanline);
#endif
#endif
+}//<----添加这行
在L版本上,因user版本默认无法关闭selinux, 如果要对user 版本有效,
同样需要修改 system/core/init/Android.mk ,新增
LOCAL_CFLAGS += -DALLOW_DISABLE_SELINUX=1
可以在开机一启动就设置selinux模式, 但这是针对所有模式。
如果只想在recovery mode下关闭而不影响normal mode,以下提供方法。
[SOLUTION]
修改/bootable/bootloader/lk/app/mt_boot/mt_boot.c
+if(g_boot_mode == RECOVERY_BOOT){ //<----添加这行
+sprintf(commanline, "%s androidboot.selinux=permissive", commanline); //<----添加这行
+}else{ //<----添加这行
#ifdef SELINUX_STATUS
#if SELINUX_STATUS == 1
sprintf(commanline, "%s androidboot.selinux=disabled", commanline);
#elif SELINUX_STATUS == 2
sprintf(commanline, "%s androidboot.selinux=permissive", commanline);
#endif
#endif
+}//<----添加这行
在L版本上,因user版本默认无法关闭selinux, 如果要对user 版本有效,
同样需要修改 system/core/init/Android.mk ,新增
LOCAL_CFLAGS += -DALLOW_DISABLE_SELINUX=1
:):):):):):):)
