以普通用户登录linux,然后运行adb devices会提示权限不够:
List of devices attached
???????????? no permissions
这是因为访问adb 设备需要root 权限。
解决方法一:在每次使用的时候运行 sudo adb devices,缺点太明显,每次都需要手动输入密码
解决方法二:为adb 设置权限,利用文件的set-user-id属性来解决这个问题,具体步骤为
which adb
cd adb_path(我这里是/usr/bin/)
sudo chown root:root adb
sudo chmod a+x adb
sudo chmod a+s adb
这时就改好了,执行kill-server后在启动发现直接adb就可以访问设备了。
先将adb的owner改为root、对所有用户加入可执行属性,然后设置set-user-id属性。这样,任何用户运行adb后,adb就会以owner身份运行(即root),而不是登录的用户。之后还需要adb kill-server,重新启动adb server。
fastboot也可以做相同的设置