adb控台中Permission denied的解决方案

原文网址:http://blog.csdn.net/wkl305268748/article/details/13504171

【前提】手机一定要root

在控制台中想要将电脑上c盘中的tcpdump文件导入到/data/local/tcpdump中

于是采用adb push c:/tcpdump /data/local/tcpdump命令,但提示Permission denied没有权限

于是使用命令adb shell进入超级用户查看了一下:

技术分享

在d  rwx  rwx  --x中  

第一个rwx 表示“用户(user)”,即文件或目录的所有者 

第二个rwx表示“同组(group)用户”,即与文件属主有相同组ID的所有用户。

最后--x表示“其他(others)用户”。

r 可读

w 可写

x 可执行

之所以出现Permission denied是因为我们作为others用户没有读写权限,所以我们可以加上读写权限(因为我们现在是超级管理员)

 

使用命令chmod 777 data

命令chmod的详解在这里:http://blog.csdn.net/wkl305268748/article/details/13505103

技术分享

可以看到data文件的权限变成了d rwx rwx rwx

这样再运行adb push c:/tcpdump /data/local/tcpdump命令就可以啦

 

可能有人会问,为什么不在超级用户中直接把文件拷贝到手机中呢,我也试过这个命令,后来提示错误:

* daemon not running. starting it now on port 5038 *
* daemon started successfully *
error: device not found

是因为device没有启动,打adb devices命令查看了一下,果然没有找到devices

退出之后再打这个命令,却找到了devices

技术分享

我觉得可能是从这个adb进入超级用户的,估计这个device被占用了,希望高手能给我解答一下

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。