dcbakkk 发表于 2012-10-7 21:44

关于Android的数字权限

本帖最后由 dcbakkk 于 2012-10-7 22:12 编辑

更改系统文件权限众所周知必须先获取root权限,用rootexplore(R.E.文件管理器)更改文件权限非常方便。
当放入或更改某些系统文件时需要更改权限,内存卡里所有文件的权限都是777无法更改,所以某些文件放入系统替换首先将它放入系统任意位置修改权限后在移动或剪切到原位置替换。
文件该设置什么权限,基本上系统里每个文件夹下的文件权限都是相同的,部分文件夹里的文件不相同,如/system/app下所有的权限都是644。需要替换的文件设为与原文件一样,添加的文件一般与文件夹下其它文件一样。
因为这个是unix里头的说法,大家知道android是基于linux的,所以有了这个数字权限的说法。
http://static.pb.pbcdn.com/data/attachment/album/201210/07/221022gp7bk6e0xnikk7k6.jpg
0代表:没有
1代表:执行权限
2代表:写权限
3代表:写,执行权限
4代表:读权限
5代表:读,执行权限
6代表:读,写权限
7代表:读,写,执行权限
举例:644:
第一个数字代表:用户,第二个数字代表:分组, 第三个是数字代表:其他.
所以呢,644 权限:
用户:读 写 X
分组:读 X X
其他:读 X X
当然也可以全部勾勾勾
4位以上的权限说明比如类似:chmod 06755 /system/xbin/su
这个涉及到linux中的文件和目录特殊权限:一般用户若无特殊需求,不应该启用这些权限,避免安全方面出现严重漏洞,造成黑客入侵,甚至摧毁系统!!!
所以我们要ROOT才会用到这个,在android系统目录下打开权限(CM7版本下)可以看到最下还有三个选项,分别是:
Set UID , Set GID,Sticky
其中:
s或S(SUID,Set
UID):可执行的文件搭配这个权限,便能得到特权,任意存取该文件的所有者能使用的全部系统资源。
s或S(SGID,Set
GID):设置在文件上面,其效果与SUID相同,只不过将文件所有者换成用户组,该文件就可以任意存取整个用户组所能使用的系统资源。
T或T(Sticky):/tmp和
/var/tmp目录供所有用户暂时存取文件,亦即每位用户皆拥有完整的权限进入该目录,去浏览、删除和移动文件。
因为SUID、SGID、Sticky占用x的位置来表示,所以在表示上会有大小写之分。

SUID的代表数字是4,比如4755的结果是-rwsr-xr-x

SGID的代表数字是2,比如6755的结果是-rwsr-sr-x

Sticky的代表数字是1,比如7755的结果是-rwsr-sr-t

假如同时开启执行权限和SUID、SGID、Sticky,则权限表示字符是小写的:

-rwsr-sr-t

如果关闭执行权限,则表示字符会变成大写:

-rwSr-Sr-T
6=4+2,即同时设置UID和GID,所以6755也就是 rwsr-sr-x

0:指定文件类型,“0” 表示该文件是一个普通文件。符号是 “-” (所创建的文件绝大多数是普通文件)

所以:

0755、755、-rwxr-xr-x、rwxr-xr-x 表示的是同一个权限

06755、6755、-rwsr-sr-x、rwsr-sr-x 表示的是同一个权限

jeff2229 发表于 2012-10-7 21:46

好乱……

dcbakkk 发表于 2012-10-7 21:48

jeff2229 发表于 2012-10-7 21:46 static/image/common/back.gif
好乱……

从Word里头贴上来的,没想到格式这样了,已经重新编辑了

YY_Crazy 发表于 2012-10-7 22:35

嗯 就是Linux的权限

wzhy 发表于 2012-10-7 23:07

06755,前面的0代表什么?

qiaohuobaba 发表于 2012-10-8 08:39

玩了这么久 安卓 还没仔细研究过这个
页: [1]
查看完整版本: 关于Android的数字权限