由于某些原因,需要通过eclipse访问/data/下的文件。
打开eclipse-DDMS,看到data是根目录下的3个之一,左边的“expandable”标志很可爱。
结果发现:点不开。使劲点,还是点不开。
检查一下:设备正常online,并且同是根目录下mnt,system能正常访问
狂搜google,一堆stackoverflow上的同志告诉我:需要rooted phone。
可是很久很久之前就root过了…
寻找真正的原因。此处省去3千字…
仔细查看DDMS,重大发现
data drwxrsw–x
mnt drwxrwxr-x
mnt drwxr-xr-x
权限!data的other user权限里没有r,不可读!接下去怎么办就明了。
[Solution]
进入sdk platform-tool
>adb shell
$ su
# chmod 755 /data
linux命令chmod 755的意思
chmod是
Linux下设置文件权限的命令,后面的数字表示不同用户或用户组的权限。
一般是三个数字:
第一个数字表示文件所有者的权限
第二个数字表示与文件所有者同属一个用户组的其他用户的权限
第三个数字表示其它用户组的权限。
www.2cto.com
权限分为三种:读(r=4),写(w=2),执行(x=1) 。 综合起来还有可读可执行(rx=5=4+1)、可读可写(rw=6=4+2)、可读可写可执行(rwx=7=4+2+1)。
所以,chmod 755 设置用户的权限为:
1.文件所有者可读可写可执行 --7
2.与文件所有者同属一个用户组的其他用户可读可执行 --5
3.其它用户组可读可执行 --5
-rwx-r--r-- (一共10个参数)
第一个跟参数跟chmod无关,先不管. 2-4参数:属于user 5-7参数:属于group 8-10参数:属于others 接下来就简单了:r==>可读 w==>可写 x==>可执行 r=4 w=2 x=1 所以755代表 rwxr-xr-x
打开,搞定!为了访问更深的目录,一路继续chmod。(为了安全起见,我参照system的设置,给了755)