最近我正在使用Android 8并使用selinux问题阻止...
我在init.rc中创建了一个“ppp”服务来启动pppd,如下所示:
service ppp /system/bin/pppd call gprs
user root
group system radio
disabled
oneshot
但是使用命令“setprop ctl.start ppp”启动此服务时失败。
selinux已设置为许可模式,但仍显示如下,并且服务未启动:
console:/#[430.567622] init:无法ctl.start用于服务ppp:文件/ system / bin / pppd(标记为“u:object_r:ppp_exec:s0”)标签不正确或没有域转换到u: r:init:s0到另一个定义的SELinux域。您是否正确配置了服务? https://source.android.com/security/selinux/device-policy#label_new_services_and_address_denials
ppp.te和file_contexts未更改:
ppp.te:
typeattribute ppp coredomain;
domain_auto_trans(mtp, ppp_exec, ppp)
file_contexts:
/system/bin/pppd u:object_r:ppp_exec:s0
感谢提前解决此问题的任何信息!
答案 0 :(得分:0)
当您使用“ setprop ctl.start ppp”时,该服务从init启动。
尝试以下政策:
domain_auto_trans(init, ppp_exec, ppp)