我们的目录里面存的是文件的索引,相当于一本书的目录,可以在目录里面查看文件名和inode name,所以目录一般占用的空间不大,真正占空间的是文件。而文件里存的是数据。
目录和文件重要的区别是在r,w,x的作用上面:
权限 | 对文件的影响 | 对目录的影响 |
---|---|---|
读(r) | 可以读取文件内容 | 可以列出目录的内容 |
写(w) | 可以更改文件内容 | 可以创建或删除目录中的任一文件 |
执行(x) | 可以作为命令执行文件 | 可以访问目录的内容(取决于目录文件的权限) |
之所以对上面的内容:“可以创建或删除目录中的任一文件” 加粗是有原因的。
例如一个文件权限的查看结果是:
---------- 1 root root 5B 5 22 15:35 file1
不能说一个其他用户对文件没有删除权限,要取决于,该用户是否对这个文件的上级目录有没有“wx”权限,和文件的权限无关,这是很容易产生的误区。
以root用户创建一个文件夹
#ls -lhad Shell/
drwxr-xr-x 2 root wheel 64B May 26 21:22 Shell/
执行以下命令:
#chmod 754 Shell/
则当以其他用户查看时
$cd /Shell
-bash: cd: /Shell: Permission denied
root用户执行:
#chmod 754 /Shell
对于其他用户
$ls -lha /Shell
ls: : Permission denied