文件权限中 chmod、u+x、u、r、w、x分别代表什么

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/BjarneCpp/article/details/79912495

先举个例子,下图是Linux中的用户分组:
用户分组

Linux系统中的每个文件和目录都有访问许可权限,如下面所示:
这里写图片描述
要说清楚问题,我们截取一些内容:

ypy@ubuntu:~$ ls -l
drwxr-xr--  2 ypy  ypy     4096 Nov 30 18:33 Desktop/
drwxr-xr--  2 ypy  ypy     4096 Nov 30 18:33 Documents/
drwxr-xr--  2 ypy  ypy     4096 Dec  1 16:01 Downloads/
-rwxrwxr--  2 ypy  ypy     4096 Feb  8 19:59 exercise
-rw-rw-r--  2 ypy  ypy     4096 Dec  1 16:02 file.sh
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

看上面第一列的内容:

drwxr-xr-- 表示用户权限为:读、写、执行;用户组权限:读、执行;其他权限:读,不能写和执行
-rw-rw-r-- 表示用户权限为:读、写;用户组权限:读、写;其他权限:读,不能写和执行
0123456789(这里,我写个标号,为了后面说明问题方便使用)
  • 1
  • 2
  • 3

接着再深入讲解,正确说的直白一点,下面是必要的知识,需要你记住的:

Linux系统中的每个文件和目录都有访问许可权限,
用它来确定谁可以通过何种方式对文件和目录进行访问和操作。
文件或目录的访问权 限分为只读,只写和可执行三种。

这里显示的权限是依次排列的,分别为:[用户][同组][其他]
用户权限,就是你自己的权限。英文:user,简写:u(覆盖标号123)
用户组权限,就是和你同组的人的权限。英文:group,简写:g(覆盖标号456)
其他权限,就是不和你同组的人的权限。英文:others,简写:o(覆盖标号789)
所有人的权限,英文:all,简写:a

r, 即Read,读,权限值为4
w,即Write,写,权限值为2
x,即eXecute,执行,权限值为1
-,在标号0位置,表示普通的文件
-,其他位置,表示对应权限未开启,不具备权限
d,即directory,表示目录文件

无任何权限:数字0表示
开所有权限:数字7表示,即7=4+2+1

chmod 命令是用于改变文件或目录的访问权限。

+ 表示增加权限,如u+x, u+r, u+w, g+w, g+r, o+r, a+r等
- 表示取消权限,如u-x, u-r, u-w, g-w, g-r, o-r, a-r等
= 表示赋予给定权限,并取消其他所有权限(如果有的话,如原来u是rwx,设置u=r,u就剩r)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25

假如你的file.sh文件权限是这样:
drw-rw-r-- 2 ypy ypy 4096 Dec 1 16:02 file.sh,
表示为:
你可以对该file.sh文件进行读、写、不能执行;
和你同组的人可以读、写、不能执行;
其他不和你同组的人:只能读,不能写和执行。

现在我们来分析一下,对file.sh文件,做这个操作:chmod u+x file.sh是什么意思呢?
表示用户权限中,增加执行权限,修改后变成这样:
drwxrw-r-- 2 ypy ypy 4096 Dec 1 16:02 file.sh

更多内容:
Linux命令:修改文件权限命令chmod、chgrp、chown详解

https://blog.csdn.net/BjarneCpp/article/details/79912495

posted @ 2019-09-19 17:00  逐梦~前行  阅读(12549)  评论(0编辑  收藏  举报