userroot版本-MTK平台关selinux会进入fastboot模式

user版本开启root权限,其中有一个步骤是需要关闭Selinux安全检查,但是在Android U MTK平台直接关闭selinux会直接进入fastboot模式,解决这个问题,我这里不采用直接关闭的方案,而是返回userdebug的策略模式,这样既可以成功让user版本开启root权限,也避免了会开机直接进入fastboot模式

具体配置:
1、/system/system/sepolicy/Android.bp
将userdebug版本的策略文件 “:userdebug_plat_sepolicy.conf” 文件命令为userdebug_plat_sepolicy_cil

 // BEGIN <Android> <2023/10/13> <add for user root version>
 se_policy_cil {
     name: "userdebug_plat_sepolicy_cil",
     src: ":userdebug_plat_sepolicy.conf",
     additional_cil_files: [":sepolicy_technical_debt{.plat_private}"],
     dist: {
         targets: ["droidcore"],
     },
 }
 // END <Android> <2023/10/13> <add for user root version> 

2、/system/system/sepolicy/Android.mk
在ifeq判断是userroot版本(你想做的版本),则将刚才命名的userdebug_plat_sepolicy_cil加入到LOCAL_REQUIRED_MODULES中,指定依赖关系

 # BEGIN <Android> <2023/10/13> <add for user root version> 
 ifeq ($(strip $(是userroot版本)),true)
 LOCAL_REQUIRED_MODULES += \
     userdebug_plat_sepolicy_cil
 endif
 # END <Android> <2023/10/13> <add for user root version> 

3、/system/system/core/init/selinux.cpp
在GetUserdebugPlatformPolicyFile判断是userroot版本,则返回此策略文件

  std::optional<const char*> GetUserdebugPlatformPolicyFile() {
  // BEGIN <Android> <2023/10/13> <add for user root version> 
  #ifdef 是userroot版本
      return "/system/etc/selinux/userdebug_plat_sepolicy_cil";
  #endif
  // END <Android> <2023/10/13> <add for user root version> 
  
      // See if we need to load userdebug_plat_sepolicy.cil instead of plat_sepolicy.cil.
      const char* force_debuggable_env = getenv("INIT_FORCE_DEBUGGABLE");
...
...

介绍:
userdebug_plat_sepolicy.conf是Android系统中的一个策略文件,用于定义平台级别的安全策略。在Android中,安全策略是通过SELinux(安全增强的Linux)实现的,它控制着Android系统中各个进程和组件的访问权限。userdebug_plat_sepolicy.conf文件包含了一系列的规则和策略,用于定义userdebug版本的系统在开发和调试过程中的安全策略。这些策略可以包括允许特定的调试功能、允许特定的权限和访问等。

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值