Android真机调试时DDMS无法查看/data目录

问题与解决方法

如题。/data的文件权限是drwxrwx--x

  • 第一位d代表文件类型,d是directory目录;
  • 后三位rwx代表创建者的权限,r读,w写,x执行
  • 再后三rwx位代表同组者的权限
  • 最后三位–x是其他人的权限,这里只有x执行,将它改成rwx即可。

在cmd中运行adb命令

adb shell su -c "chmod 777 /data"

子目录需要使用同样的命令修改权限才可操作。


chmod 命令

说明

Linux/Unix 的档案调用权限分为三级 : 档案拥有者、群组、其他。利用 chmod 可以藉以控制档案如何被他人所调用。

chmod [-cfvR] [--help] [--version] mode file...
参数说明:
-c : 若该档案权限确实已经更改,才显示其更改动作
-f : 若该档案权限无法被更改也不要显示错误讯息
-v : 显示权限变更的详细资料
-R : 对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更)
--help : 显示辅助说明
--version : 显示版本
mode: 权限设定字串,格式如下 : [ugoa...][[+-=][rwxX]...][,...],其中
    u 表示该档案的拥有者user
    g 表示与该档案的拥有者属于同一个群体者group
    o 表示其他以外的人other
    a 表示这三者皆是all
    + 表示增加权限、- 表示取消权限、= 表示唯一设定权限。
    r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。
    -----------------
    也可以用数字来表示权限如 chmod 777 file,三个数字分别表示user、group、other权限
        r=4,w=2,x=1。7表示rwx,依次类推

范例

所有人皆可读取

chmod a+r file1 file2

拥有者、同组者可写入,其他人不可写入

chmod ug+w,o-w file

只有该档案拥有者可以执行

chmod u+x file

当前目录下的所有档案与子目录皆设为任何人可读取

chmod -R a+r *

所有人皆可读写执行

chmod a=rwx file
chmod 777 file    # 与上等效

创建者、同组者读写执行,其他人仅执行

chmod ug=rwx,o=x file
chmod 771 file    # 与上等效

使程序拥有root权限

chmod 4755 filename

  


Linux常用命令全集


参考资料

loveNight wechat
我的微信公众号,放一些有趣的内容,不定期更新。