age 于 2011-01-11 17:48:39发表:
目录和文件的rw权限基本一致, 唯一有区别的可能就是执行权限了
文件的可执行权限很好理解, 最简单的理解就是可以在终端下输入路径来执行这个文件.
但目录可执行的意思则完全不同, 它并非指这个目录可以被执行. 而是指它允许在该目录下运行可执行命令,
举个例子[code][allblue@MyLady allblue]$ mkdir test
[allblue@MyLady allblue]$ ll
总用量 1.6M
drwxr-xr-x 2 allblue allblue 4.0K 1月 11 17:37 test
[allblue@MyLady allblue]$ chmod 666 test/
[allblue@MyLady allblue]$ ll
总用量 1.6M
drw-rw-rw- 2 allblue allblue 4.0K 1月 11 17:37 test[/code]现在我手动去除了test/目录的可执行权限, 来运行几个命令[code][allblue@MyLady allblue]$ cd test/
bash: cd: test/: 权限不够[/code]没有可执行权限, 连目录都进不去. 再用ls试一下, 先恢复test/的可执行权限, 以便进入新建二个子文件, 然后再去除可执行权限测试[code][allblue@MyLady allblue]$ ll test/
ls: 无法访问test/file2: 权限不够
ls: 无法访问test/file1: 权限不够
总用量 0
-????????? ? ? ? ? ? file1
-????????? ? ? ? ? ? file2[/code]虽然ls可以读到有二个子文件, 但是权限等信息全部无法获得. 如果现在我试图用vi编辑file1, 那么在vi底部会出现如下提示[code]"test/file1" [权限不足] [/code]并且不能保存,[code]E45: 已设定选项 'readonly' (请加 ! 强制执行)[/code]从这个实验可以看出目录可执行权限的重要性.