关于Linux/Unix文件系统权限的形象说明

    |     2017年10月8日   |   学习偶记   |     评论已关闭   |    646

文件权限一般是这样的:777,755,744,544,577…….或者是:drwxrwxrwx(777), d—rwxrwx(077), dr–rwxrwx(477), d-w-rwxrwx(277), d–xrwxrwx(177)
第二种可以转换成第一种,后面会详细讲

有一个家(文件),家的主人是你…
第一个数字,是你(属主)
第二个数字,一般是你家人,当然也可以是别人的家人(组)
第三个数字,是我(其它用户)

如果第三个数字是4,我可以去你家里看看(可查看)
如果第三个数字是2,我可以往你家扔个炸弹(可写入)
如果第三个数字是1,我可以点燃炸弹(可执行)
如果第三个数字是7,我可以去你家看看,然后在适当的位置放一颗炸弹,并且引爆……
如果第三个数字是5,我可以去你家看看,但很可能没有炸弹,我只能看看,再看看,再看看……
既然我这么坏,你得想办法才行:将第三个数字设置成4,也就是说,只允许我去你家看看,不允许带东西进去,也不允许放火。
当然,你也可以不让我进去,设置成0便可。如果设置成1,我很难知道那炸弹在哪里(不可读,不可写),一般没什么事,但是,一旦让我知道,你家将不得安宁!

如果第一个数字是6,你可以在你家看看,往你家扔炸弹,但你点不了火,引爆不了炸弹…如果是007,结果是什么?你能描述一下么?

这就是Linux/Unix的文件系统,有“洞”(0)反而滴水不漏!

######################字符权限转换成数据权限的说明:
如drwxrwxrwx,第一个字符代表文件类型,如果是d,那就是目录,如果是-,则是普通文件
后面9个字母即表示文件的权限了,分三组,每组三个字符,r代表可读(read,数字是4),w代表可写(write,数字是2),x可表可执行(execute,数字是1),如rwx,就是7(就是4+2+1),r-x是5(4+1)……蛮简单滴,自己偷着乐去吧!

除了符号,也可以使用八进制数字来指定具体权限,如下表所示:

0:没有任何权限                                                :—

1:执行权限                                                      :–x

2:写入权限                                                      :-w-

3:执行权限和写入权限:1 (执行) + 2 (写入) = 3  :-wx

4:读取权限                                                      :r–

5:读取和执行权限:4 (读取) + 1 (执行) = 5        :r-x

6:读取和写入权限:4 (读取) + 2 (写入) = 6        :rw-

7:所有权限: 4 (读取) + 2 (写入) + 1 (执行) = 7   :rwx

噢!评论已关闭。