羊蹓狼 发表于 2024-11-20 15:38:40

【Linux之权限】提升篇

前言

在前两篇文章里,我们已经学习了Linux中权限的理论、实践和重点,接下来我们将进一步提升对Linux权限的全面认知。虽是拓展,其实还是重点。
本文内容并不多,那我们就开始吧。
目次的权限该怎样理解呢?



[*]假如我想进入一个目次,需要什么权限?
​ 和读权限没关系,和写权限也没关系。和x有关系。x对普通文件意味着执行权限,对目次意味着进出的权限。


[*]那r和w分别对目次意味着什么?
假如一个用户对目次没有r权限,在进入这个目次后,ls我们将得到这样的报错:
https://img-blog.csdnimg.cn/img_convert/eb4ed12888eedf4aa2d385478308843f.png
目次里的文件就相称于在目次里面,没有读权限就无法查看目次里面的内容。
但是我们可以写,也就是说可以在目次里创建文件:
https://img-blog.csdnimg.cn/img_convert/2d700a3eb86832cf29f6ef701f127644.png
可以看到,都不会报错。
同样的,对于root来说,就算什么角色的权限都去掉了,root仍可以rwx。不受约束。


[*]默认环境下,我们新建一个目次,一般(对于拥有者)rwx权限都要有。
理解Linux多用户之间是怎么互相“隔离”的。

https://img-blog.csdnimg.cn/img_convert/38a13aaf50376c84c13891e90a7916ec.png
在Linux中,每新建一个普通用户,都会在home这个目次里,新建一个以这个普通用户为名的文件夹。
下次普通用户登录时,就默认在这个家目次里面。/home/naruto
我们还可以从上图看到,whb这个文件夹的拥有者和所属组就是本身,且只对全部者开放了rwx权限。这意味着任何用户,无法进入其他用户的家目次也无法读和写。这就是所谓的用户之间的“隔离”。
缺省权限

https://img-blog.csdnimg.cn/img_convert/20c170d98f1bd7f08e6b26efb3b56c89.png
我们可以发现,普通文件的默认权限是这样的:rw-rw-r–
https://img-blog.csdnimg.cn/img_convert/17a125ca7a5a74483adea4a537dae570.png
而目次的默认权限是:rwxrwxr-x
缺省值的设置:
https://img-blog.csdnimg.cn/img_convert/01668816d6933d214aac12d02e6a8f14.png
但是为什么我们创建时的初始值却不是这样的呢?
甚至对于不同人的linux,可能默认值又不一样:
这是由于体系里有一个权限掩码(不同人的linux可能不同)。umask可以查:
https://img-blog.csdnimg.cn/img_convert/fef01effe89fc92c86f79b06e38396c6.png
这里一个位是八进制的。第一个0是与用户相关的,我们不消考虑在内。也就是看002。
002的二进制是000 000 010,最终权限=起始权限&(~umask)
~umask是111 111 101,将其与初始权限111 111 111按位与得到111 111 101,转成八进制是775。
umask目标是什么?

凡是在umask中出现的权限,都不应该在最终权限中出现。
可以看到000 000 010里只有other的写权限为1,那么~就只有other的写权限为0,根据按位与,无论默认值other有没有写权限,最终生成的都不会有;同样,按位与后除了这一位都是1,也就是最终生成权限全凭初始的默认权限决定。
为什么要有umask?


[*] 假如没有,一个文件创建时默认的权限由OS决定,无法在创建前举行修改。这是为了可以满意特殊的需求。写成体系可设置,不写死,更有机动性。
[*] 特殊环境下,设置umask,可以控制文件的默认权限,让代码可控。(日后才会接触到)
怎么修改umask?

umask 0777 这样就能改
不过这种修改是一次性的,内存级的。当我重新打开,读取设置文件,会变归去。
=_=
本文到此结束,至此,【Linux之权限】这个系列也结束了。
祝大家开卷有益。
https://i-blog.csdnimg.cn/direct/7217d4cc1fe74cc38b287d9d92a1ba05.jpeg#pic_center

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 【Linux之权限】提升篇