修改init.qcom.rc文件不生效

http://blog.csdn.net/jumper511/article/details/28856249


修改Android init.rc文件后,需要将修改后的文件上传到手机,但是发下如下问题

D:\test>adb push init.rc /
failed to copy 'init.rc' to '//init.rc': Read-only file system


解决办法如下

D:\test>adb root
adbd is already running as root


D:\test>adb remount
remount succeeded


D:\test>adb shell
root@msm8974:/ # mount -o remount rw /
mount -o remount rw /
root@msm8974:/ # ^C
D:\test>adb push init.rc /
1507 KB/s (20059 bytes in 0.012s)


上传成功,不过不要高兴得太早,系统重新启动后,发现init.rc有恢复成原来的,修改没有生效,原因在于(下面的内容摘自论坛http://bbs.csdn.net/topics/390474471?page=1)

init.rc 是 rootfs 中的文件,Android 将 rootfs(initramfs) link 到 linux kernel image 中,生成正常启动的boot.img, recovery 模式的 recovery.img.
Android 每次 reboot 的时候 bootloader 都要将 boot.img 加载到ram 中,其中一部分是真正的 linux kernel image (zImage), 另外一部分就是 initramfs (包含 init, init.rc, etc).
之后,Linux kernel 初始化的时候会把 initramfs 以 rootfs 类型 mount 到 / .


为了android 在启动后linux内核自动启动某个应用或者脚本,可以修改下面的文件

device/qcom/msm8974/init.target.rc, 然后重新编译android系统, 下载boot.img

例如要在android启动后自动运行 powerOnOff linux程序,可以在init.target.rc添加如下代码

service powerOnOff /system/bin/powerOnOff
    class main
    group root
    user root

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值