【Android文件权限】
众所周知,安卓是基于linux开发的,因此想要了解android系统文件的权限,需要从Linux说起。
Linux系统权限简介:
一个文件一共有三个组别:用户、群组、其它
其中每个组包含三种权限:读r、写w、执行x
也就是说一个文件共有9个权限属性。
从左往右一到三位是[用户],四到六位是[群组],七到九位是[其它]
权限为rw-r--r--
它的意思就是:[用户]对其享有读写权限,[群组]享有读权限,[其它]享有读权限
【权限与数字对应关系】
很多时候为了方便编写脚本、使用终端,人们会用数字来表示文件的权限!
数字与权限的对应关系:
读(read) r=4
写(write) w=2
执行(excute) x=1
总共用三个数字代表三个组的权限,每个数字的大小等于每个组所包含的三个权限的数字之和。
例如:一个文件的权限为rw-rwx-r-x,它的数字表示方法就是675
代表
[用户]读 写
[群组]读 写 执行
[其它]读 执行
聪明的基友们,一定知道framework-res.apk的数字表示方法就为644了吧
常用的权限组合:
444=r--r--r--
644=rw-r--r--
666=rw-rw-rw
755=rwxr-xr-x
777=rwxrwxrwx
看了上面那部分,相信大家对linux 文件和目录的读写执行(rwx)权限有一定了解了
在这普通权限外还有3个特殊权限SUID、SGID、Sticky
SUID权限的作用是使文件的执行者拥有文件的所有者的权限,所以修改此权限要慎重
SGID权限可以作用于目录和文件
Sticky权限仅对目录有效,这个目录下的文件和目录只有root与文件的所有者可以删除,以此达到防删除的功效