Linux文件权限 - Go语言中文社区

Linux文件权限


文件属性和权限

当我们在一个目录下执行ll或者ls -l时会得到类似一下的文件列表:
在这里插入图片描述
这里列举的就是文件的属性,包括权限,所属用户,修改时间,文件名等等。具体如下:
在这里插入图片描述
其中文件类型权限由十个字符,第一个字符代表这个文件是目录、文件或链接文件

  • [d]则是目录,例如最开始的图里的app;
  • [-]则是文件,例如最开始的图里的all.csv;
  • [l]则表示链接文件
  • [b]则表示为设备文件里面可供存储的周边设备(可按块随机读取的设备);
  • [c]则表示为设备文件里面的串行端口设备,例如键盘、鼠标(一次性读取设备)。

剩下九个字符意义如下:
在这里插入图片描述
每三个字符为一组,且均为[rwx]的三个参数的组合、其中[r]代表可读(read),[w]代表可写(write),[x]代表可执行(execute)。需要注意的是这三个权限的相对位置不会改变,如果没有权限就会出现[-]。

  • 第一组为文件所有者可具备的权限,以test.sh这个文件为例,该文件的拥有者可读可写可执行;
  • 第二组为同一用户组的权限,以test.sh这个文件为例,同组用户可读可执行但是不能修改文件;
  • 第三组为除了以上两种用户其他用户的权限,以test.sh这个文件为例,其他用户可读可执行但是不能修改文件。

修改文件属性和权限

  • 修改所属用户组,chgrp
    chgrp命令是change group的缩写,要被修改的组名必须要在/etc/group文件中存在,否则会显示错误。
chgrp [-R] dirname/filename ...
-R进行该目录下递归修改

在这里插入图片描述

  • 修改文件拥有者,chown
    chown命令是change owner的缩写,除了修改所属用户,也可以顺带修改用户组,如果要连目录下的所有子目录或文件同时更改文件拥有者的话,直接加上-R的选项即可。
chown [-R] 账号名称 文件或目录
chown [-R] 账号名称:用户组名称 文件或目录
-R进行该目录下递归修改

在这里插入图片描述

  • 修改权限,chmod
    文件的权限字符为:【-rwxrwxrwx】,这九个权限三个一组,每三个分别是拥有者(owner),所属群组(group),其他人(others)的权限。我们可以使用数字来代表各个权限:
r:4
w:2
x:1

每种身份(owner,group,others)各自的三个权限(r、w、x)数字需要累加,例如当权限为:[-rwxrwx—]数字则是:

owner = rwx = 4+2+1 = 7
group = rwx = 4+2+1 = 7
others = --- = 0+0+0 = 0

所以该文件的权限数字就是770。

chown [-R] xyz 文件或目录
-R:进行该目录下递归修改
xyz:数字类型的权限属性,例如刚刚的770.

在这里插入图片描述
最初权限为[-rw-r–r--],将权限改为775则为[4+2+1][4+2+1][4+1]=[-rwxrwxr-x]。

符号类型修改文件权限

在这里插入图片描述
这里参数u就是user,g就是group,o就是others,a就是all
例如给user添加x(可执行)权限:
在这里插入图片描述
或者用=赋值权限:
在这里插入图片描述
或者拿掉所有用户的执行权限:
在这里插入图片描述
那文件夹也有权限,当文件夹具有x权限难道也能执行吗,详情请见另一篇博客:
https://blog.csdn.net/qiulinsama/article/details/86132310

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/qiulinsama/article/details/86021811
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-03-01 22:15:21
  • 阅读 ( 1053 )
  • 分类:Linux

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢