adb shell默认是没有root权限的,修改系统文件就很不方便。有两种方法可以获取adb shell的root权限,这两种方法的前提都是手机已经root。
1、用su可以提权,直接执行su就会看到用户命令提示符由”$”变成了”#”,如果手机没有root,会提示su: Permission Denied。su这个文件不是每个手机都有的,可以别处找来放在adb同一目录下,执行:
adb push su /system/bin/
adb shell chmod 4755 /system/bin/su
如果提示Read-only filesystem,那么就要重新挂载一下/system,把只读挂载成可读写,只有手机root了才能运行:
mount -o remount,rw/dev/block/mtdblock0/system /
再运行su就能让adb shell获取root权限了。
2、可以修改根目录下的default.prop提权: 根目录默认是不允许修改的,执行
mount -o remount,rw rootfs /
用vi打开default.prop,找到ro.secure,修改为ro.secure=0,保存后重启,再adb shell一下,就会有root权限了。 方法:
修改./default.prop
把ro.secure设为0,persist.service.adb.enable设为1,adbd进程就会以root用户的身份启动。