Linux文件目录权限


Linux一切皆文件

权限解释

首先我们执行 ls -al /etc/passwd 看一下 passwd文件的权限如下:

权限连接所有者用户组文件大小修改日期文件名
-rw-r–r–1rootwheel6393Jul 31 2016/etc/passwd

第一个字符代表这个文件是目录(d)、文件(-)或者链接文件(l)等

接下来三组文件权限9个字符,均为rwx三个参数组合,代表读/写/执行权限,分别属于文件所有者、用户组、其他人的权限。

一般记r权限为数字4,w为数字2,x为数字7

所以上面passwd文件的权限也可以说为 644,4+2+0 4+0+0 4+0+0
所有者拥有读写权限,用户组和其他人拥有读权限

文件和目录的权限意义并不相同

对文件而言

r(read)权限代表可读取此文件内容

w(write)可编辑文件内容(不包含删除该文件

x(execute)可被系统执行

对目录而言

r(read contents in directory)具有读取目录结构列表的权限,如使用ls命令读取文件夹下的文件列表

w(modify contents in directory)这个权限对目录来说是很强大的,因为它表示你具有更改该目录结构列表的权限,具体如下:

  • 新建文件与目录,如touchmkdir等命令
  • 删除已存在的文件与目录(不论该文件的权限为何)如rm等命令
  • 将已存在的文件重命名,如mv等命令
  • 转移该目录内的文件,目录位置

x(access directory)代表用户能否进入该目录成为工作目录(work directory),如cd等命令

文件的默认权限:umask

也就是新建文件或目录的默认权限,umask umask -S命令查看,一般为0022
若用户创建文件,默认没有执行权限,则总权限为-rw-rw-rw-
若用户新建目录,则默认全部权限drwxrwxrwx
umask的分数指的是,该默认值需要减到的权限,rwx为421

对上面的上umask来说
用户创建文件:(666 - 022) = 644 = -rw-r–r–
用户创建目录:(777 - 022) = 755 = drwxr-xr-x

如何改变文件用户权限

当我们需要改变文件(目录)权限时,有两个命令chownchmod

参考文献:

《鸟哥的Linux私房菜》


文章作者: 江湖义气
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 江湖义气 !
  目录