近期在给android 4.3系统进行root时候,一直出现例如以下的红色权限问题 :
7.695741] Freeing init memory: 236K
[ 8.555286] init: cannot find '/system/bin/dbus-daemon', disabling 'dbus'
[ 8.566954] init: cannot execve('/system/etc/install-recovery.sh'): Permission denied [ 8.622915] camera_subdev: disagrees about version of symbol module_layout
[ 8.846227] android_usb: already disabled
[ 8.850866] mtp_bind_config
可是发现个现象就是,第一次烧机启动都会提示 install-recovery.sh' 无权限运行,可是第二次启动之后就出现例如以下log: [ 8.358580] init: cannot find '/system/bin/dbus-daemon', disabling 'dbus' [ 8.503838] camera_subdev: disagrees about version of symbol module_layout [ 8.538767] warning: `daemonsu' uses 32-bit capabilities (legacy support in use) [ 8.656285] android_usb: already disabled 说明install-recovery.sh已经得到运行,这时候root就能够成功。
7.695741] Freeing init memory: 236K
[ 8.555286] init: cannot find '/system/bin/dbus-daemon', disabling 'dbus'
[ 8.566954] init: cannot execve('/system/etc/install-recovery.sh'): Permission denied [ 8.622915] camera_subdev: disagrees about version of symbol module_layout
[ 8.846227] android_usb: already disabled
[ 8.850866] mtp_bind_config
可是发现个现象就是,第一次烧机启动都会提示 install-recovery.sh' 无权限运行,可是第二次启动之后就出现例如以下log: [ 8.358580] init: cannot find '/system/bin/dbus-daemon', disabling 'dbus' [ 8.503838] camera_subdev: disagrees about version of symbol module_layout [ 8.538767] warning: `daemonsu' uses 32-bit capabilities (legacy support in use) [ 8.656285] android_usb: already disabled 说明install-recovery.sh已经得到运行,这时候root就能够成功。
由于在init.rc改动过他的权限,第二次才生效。
经过分析。最后最终成功了。解决的方法例如以下:把install-recovery.sh的启动放在init.rc例如以下: 在前面某个位置添加: + chmod 0755 /system/etc/install-recovery.sh service wifi_mac /system/bin/sh /system/etc/check_wifi_mac.sh class late_start oneshot+ service flash_recovery /system/etc/install-recovery.sh+ class main+ oneshot 把init.${ro.hardware}.rc中的 - service flash_recovery /system/etc/install-recovery.sh- class main- oneshot删掉。又一次编译烧写系统就可以实现完美root。