往往需要在Android启动过程中去对系统做一些设置,如修改某些文件夹的属主和文件的权限,可在init.rc中增加service执行shell脚本,从而可在shell脚本中完成大部分操作。
1、在system/bin/下创建一个shell脚本init.mbx.sh,以修改mtd权限为例,内容如下:
#!/system/bin/sh
busybox chmod 666 -R /dev/mtd/*
2、在init.{hardware}.board.rc中增加执行上述脚本的service
service init-setup /system/bin/init.mbx.sh
class main
user root
group root
oneshot
把service设为class main,则在启动class类的serive自动启动init-setup的service。
如果想在更后的时间执行shell脚本,可如下设置:
service init-setup /system/bin/init.mbx.sh
user root
group root
disabled
oneshot
on property:sys.boot_completed=1
start init-setup