编辑Seliunx规则

时间:2019-07-11 16:10:23

标签: android android-source selinux

我正在尝试编译AOSP,并且一次编译成功后,由于Android SElinux implementation,我更改了一些selinux规则,然后,我进入AOSP根目录并运行m,确实找到了一些差异,并且似乎编译了一个新的boot.img(由于它生成的时间),但是在我用fastboot flashall -w对其进行刷新之后,dmesg仍然显示了avc sepolicy失败,这是我刚刚添加的

所以问题是我的例程做错了吗? 还有什么简便的方法可以确定我修改过的Sepolic是否已编译到boot.img中?

也许有些机制我会误解或忽略?

PS:Branch是带有午餐42的android-9.0.0_r2 我尝试过先在/ system / sepolicy下运行mm(在其中更改了te),然后再运行 m ,但这仍然是问题

2 个答案:

答案 0 :(得分:1)

通常是的,更改.te文件后应该更新boot.img,但是我不确定构建脚本是否会对此进行检查,因此您可以在删除与sepolicy相关的中间文件后重新构建引导映像。

检查policy.conf文件夹中的out文件是否已使用新规则进行更新。

此处的相关主题: https://android.stackexchange.com/questions/69954/how-to-unpack-and-edit-boot-img-for-rom-porting/154621#154621

您还可能想阅读https://www.whitewinterwolf.com/posts/2016/08/15/examine-android-selinux-policy/https://ge0n0sis.github.io/posts/2015/12/exploring-androids-selinux-kernel-policy/#dumping-sepolicy-back-to-policyconf

答案 1 :(得分:1)

要回答第二个问题:您可以unpack the boot.img并检查您的规则是否已与sepolicy-analyze添加在一起。

示例:

. build/envsetup.sh
lunch
# List all known attributes
sepolicy-analyze <path-to-your-extracted-sepolicy-file> attribute -l