0


【Linux课程学习】:对于权限的理解(粘滞位)

🎁个人主页:我们的五年

**🔍系列专栏:Linux课程学习 **

🌷追光的人,终会万丈光芒

🎉欢迎大家点赞👍评论📝收藏⭐文章

这篇文章主要理解权限的概念,以及如何更改权限,和有时候关于权限方面的指令不被允许的原因。

🎡一.Linux权限的概念:

权限=用户+文件/目录的属性

ll指令,或者ls -l可以查看文件的权限信息。

1.用户:

一个文件,目录,有三个分类:
1.user(u)文件拥有者。

2.Group(g)文件的所属组。

3.Other(o)其他用户。

在用户匹配的过程中,只能匹配一次,从先到后,先是拥有者,然后是所属组,后面是其他人。

也就是说,要不就是拥有者,要不就是所属组,要不就是其他人。

比如首先匹配的是拥有者,对于拥有者没有的权限,而所属组有的权限,拥有者也是没有的。

对于不同的用户,因为会在文件/目录的1.拥有者2.所属组3.其他用户,这三个用户变化,所以不同的用户,权限可能不同。

注意:上面的用户是针对普通用户的,超级用户root无视权限。

下面这个,前面的是这个文件或者目录的拥有者,后面的是文件/目录的所属组。


2.文件/目录属性:

一个文件/目录,我们可以更改拥有者,所属组,其他人,这三个类别的权限来改变权限。

对于文件/目录,有三个权限,r权限,w权限,x权限。有三个组别,那就有九个字母,-表示不存在这一权限。

比如:

先不管最前面的字母。

1.上面test.cpp的权限是:前面三个是拥有者的权限(rw-)表明这个文件的拥有者有r权限和w权限,没有x权限。

2.中间的三个字母(r--),表示所属组有r权限,没有w权限和x权限。

3.后面的三个字母,表示其他人的权限,也是(r--)也只有r权限。

🏝1.r权限:

对于文件来说,有r权限,那就可以读取文件的内容可以进入文件看,但是不能修改。对于目录来说,就可以列举查看目录下的子目录/子文件的信息。

🏝2.w权限:

对于文件来说,w权限可以在文件中写东西,对于目录来说,可以在这一目录下,新建或者删除目录下的子文件/子目录。

🏝3.x权限:
对于文件来说,是执行权限。

注意:一个文件要能执行,不光要有x权限,而且要这个文件本身就是可以执行的。

对于目录在说,x权限是可以进入这一目录。

🎡二.更改权限:

1.更改rwx权限:

chmod:

功能:设置文件的访问权限。

格式:chmod [参数] 权限 文件名。

常用选项:

●R 递归修改目录文件的权限。

注意:只有文件的拥有者,和root(超级用户)可以更改。


参数有:+-=

u:拥有者。

g:所属组。

o:其他用户。

a:所以用户。

例如:

让u(拥有者加上x权限)

更改方式也可以用三个八进制位。

r:100(十进制:4),w:010(2),x:001(1)。

rw:110(6),rx:101(5),wx:011(3)。

rwx(7)。

操作说明:

chmod 三个八进制数 文件名称

二.改变文件的拥有者,所属组:

1.更改拥有者:

chown 新的拥有者 文件名称

2.更改所属组:
chgrp 新的所属组 文件名称

-R 递归修改文件所属组

🎡三.对于umask的理解:

新建一个文件的默认权限是=0666(rw-rw-rw-)。

新建一个目录的默认权限是=0777(rwxrwxrwx)。

但是我们新建的文件或者目录开始的权限却不是这个,这是为什么呢?

因为最终的权限是开始的权限&(~umask)

超级用户的umask默认值是0022,普通用户的0002。

所以超级用户新建的目录为0777&(~0022)=0755。

新建文件为0666&(~0022)=0644。

更改umask的值:

umask 新的值

🎡四.粘滞位的理解:

首先我们要理解,删除一个目录或者文件的权限是取决于你是否拥有上一级目录的w权限。而不是看要删除文件的w权限。


因为某种原因,我们和别人需要建一个共享目录,这样所有人的权限都是rwx(如下)。但是我们在这里写的东西,虽然别人没有写的权限,但是别人却可以删除我们在share目录下新建的文件。因为删除share目录里的文件夹,取决于你在share是不是有w权限,但是这是共享的目录,所以人都可以在share目录下删除别人的文件。

在这样的情况下,我们就引入了粘滞位。

给目录下、加上粘滞位,即使你对这一目录有写的权限,只要这个文件不是你的,你就不能删除这个文件。

标签: 学习 linux

本文转载自: https://blog.csdn.net/djdjiejsn/article/details/140929599
版权归原作者 我们的五年 所有, 如有侵权,请联系我们删除。

“【Linux课程学习】:对于权限的理解(粘滞位)”的评论:

还没有评论