首页
社区
课程
招聘
[求助]在android5.0 init.rc 中启动自己的daemon
发表于: 2015-8-12 18:10 11915

[求助]在android5.0 init.rc 中启动自己的daemon

2015-8-12 18:10
11915
最近需要在android5.0 init.rc 中启动自己的daemon,
  按照之前的方法,修改了boot.img中的init.rc
如下:
service my_service /sbin/my_binary
    class main
    user root
    seclabel u:r:init_shell:s0
    oneshot

或者标签使用
  seclabel u:r:rootfs:s0

/sbin/my_binary  都不能启动。
修改 /system/bin/install-recovery.sh 也不能启动。

应该是SEAndroid 造成的,但是不知道具体原因。

哪位大侠知道怎么回事儿,指教一二,十分谢谢~~
收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 53
活跃值: (275)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
2
先手动adb shell /sbin/my_binary看能否运行,可以的话再考虑是否是selinux问题

查看selinux的异常再根据异常加相应的策略
adb shell "stop my_service; start my_service"
adb shell "cat /proc/kmsg | grep avc"
2015-8-13 11:04
0
雪    币: 181
活跃值: (45)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
在 external/policy中修改 service_context 添加你自己服务的安全配置,不然启动不起来

你服务程序(EXE)本身也需要安全配置。
2015-8-13 11:34
0
雪    币: 238
活跃值: (25)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
谢谢  两位大侠,这个问题我还没有解决,换在看,
我的目的是修改rom,在init.rc中添加自己的服务,使其开机的时候,可以自动启动。

这个目标在没有源码的情况下,应该可以实现吧?

只是不知道都要修改那几个文件?

我现在在根据自己找到的资料正在尝试着修改。谢谢各位!

init.rc
----------------------------
service my_binary /sbin/my_binary
    class main
    user root
    seclabel u:r:init_shell:s0
    oneshot

cat/proc/kmsg|grep avc
207.276:156): avc: denied { entrypoint } for pid=4727 comm="init" path="/sbin/my_binary" dev="rootfs" ino=4451 scontext=u:r:init_shell:s0 tcontext=u:object_r:rootfs:s0 tclass=file
2015-8-14 11:43
0
雪    币: 238
活跃值: (25)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
5
谢谢  两位大侠,已经启动起来了, 是把上面的class main 改为class core   

对SEAndroid还没有熟悉,得再好好看看~ 总结下
2015-8-14 15:25
0
游客
登录 | 注册 方可回帖
返回
//