Linux权限(下)

简介: Linux权限

但是不知道有老铁注意到没,好像有问题,上面虽然我不是拥有者,我把读和写的权限去掉了,但是我不仅是拥有者,我还是所属组啊,所属组有读和写的权限,为什么我不能读和写呢?


1669266968291.jpg


这里要说到Linux匹配权限的规则:从左到右先匹配拥有者,再匹配所属组的。


1669266977151.jpg


但是other有个例外,那就是root用户。


1669266987597.jpg


root账号非常重要!!!!!!!!!!!


🏆4、设置文件所属角色


除了文件属性权限的修改,我们还能修改拥有者和所属组。


👓①、chown

使用方式:chown 角色 文件名


比如我把test.txt 文件给了用户Zed。


1669267013368.jpg


但是给文件也要征得别的用户同一。这里我们用root权限,强制给。


强制给方式:root的话直接: chown 角色 文件名


                           普通用户: sudo chown 角色 文件名(先把自己加入可信任名单)

1669267022173.jpg

👓 ②、chgrp

chgrp 授予的所属组  文件名


1669267035563.jpg


这里其实chown可以满足同时改拥有者和所属组。但是不能单独改所属组


1669267044498.jpg


🏆5、改权限的数字方式


如果用二进制的方式改文件,是否可行呢?


1669267056088.jpg


我们将前一种通过指令改权限的方式称为 ugo + rwx方案。


而把数字方式称为八进制方案。rwx相应位置给1或0,再转化为八进制就能实现给或收权限!!


1669267069745.jpg


👓①Linux底层的权限设计

那这里还有一个问题,为什么我们创建的目录或普通文件,默认权限是我们所看到的样子呢?也就是为什么目录和普通文件创建出来就是


1669267087996.jpg


我们还需要了解Linux的相关规定:


Linux规定:


创建目录的起始权限是:777


创建普通文件的起始权限是:666


但我们创建的也不是777 和666啊?


还要介绍一个东西:权限掩码:umask 。Linux规定,凡是在umask中出现的权限都必须在起始权限中去掉!


umask默认是 0002.


1669267099815.jpg

1669267110118.jpg

那要是我不想他的起始权限是这样子,我想让他的起始权限修改,怎么操作?


我们可以修改umask。

1669267122480.jpg

那么还有一个问题:去掉umask是做减法吗?


1669267133555.jpg


👓 ②最终权限

最终权限=起始权限 & (~ umask)


&:按位与


~:按位取反


那么是不是这样子的,我们可以验证一下:


1669267142228.jpg

1669267149849.jpg

👓 ③进入目录的权限

最后一个问题,我们如果要进入一个目录,需要什么权限?是r(读)吗?是x(执行)吗?


1669267161928.jpg


这里也印证了为什么系统规定一个目录必须从777开始的。


👓④file指令

file指令用于辨识文件类型。


1669267170543.jpg


🏆六、粘滞位


👓①公共目录

Linux系统中有很多用户,有时我们为了工作交流的需要,可能需要消息共享和信息传递,所以我们需要在一个公共的目录下,进行临时文件的创建(增删查改)。


1669267182817.jpg


在根目录下,tmp目录就是一个公共目录,它可以放置很多用户的临时文件。如果我想创建一个公共目录可以吗?显然是可以的,这个文件应该是由root用户创建的,如果是非root用户,需要sudo提权创建。


1669267191469.jpg


我们看到在公共目录下,Zed用户的文件是禁止其他用户看到的。


1669267200456.jpg


那么,其他用户肯定不能查阅这个文件,那么我们可以删除这个文件吗?


1669267211509.jpg


我们看到Gyh用户不可以访问这个文件,但是竟然可以删除这个文件,一个没有访问权限的人有权删除一个文件。


看似不合理的删除,其实很合理,为什么呢?因为这是个公共目录,任何用户都可以对文件进行操作,所以这个删除是很合理的。因为删除文件的权限是目录的权限,和文件本身没有任何关系!!!


但是站在用户的角度,让我们很不舒服,我们想达到在公共目录中,大家可以各自进行rwx操作,但是禁止互删文件!!


所以就有了粘滞键。


👓②粘滞位

#粘滞位 对文件有保护作用。


当一个目录被设置为”粘滞位“(用chmod+t),该目录下的文件只能由


1、超级管理员(root)删除


2、该目录下的所有者删除


3、该文件的所有者删除。


粘滞位操作:chmod +t +公共目录


注意粘滞位是为了解决目录权限的问题,所以要给目录设置,而非文件。


1669267225241.jpg


最后奉上两幅图:

1669267233841.jpg

1669267244404.jpg

相关文章
|
4月前
|
Linux Shell 数据安全/隐私保护
Centos或Linux编写一键式Shell脚本创建用户、组、目录分配权限指导手册
Centos或Linux编写一键式Shell脚本创建用户、组、目录分配权限指导手册
250 3
|
11月前
|
Linux Shell
Linux系统文件默认权限
Linux系统文件默认权限
238 2
|
7月前
|
安全 Unix Linux
【Linux权限】—— 于虚拟殿堂,轻拨密钥启华章
25000多字详细讲解,深度剖析权限管理核心。从基础权限到复杂的特殊权限,逐一拆解,无论你是零基础小白还是经验丰富的运维人员,都能在这里找到提升技能的关键知识,全面掌握 Linux 权限管理。还不快来看看?
【Linux权限】—— 于虚拟殿堂,轻拨密钥启华章
|
6月前
|
安全 Linux 数据安全/隐私保护
【Linux】深入理解linux权限
本文深入解析Linux权限管理机制,涵盖权限概念、用户角色、文件属性及操作方法。文章分为前言、权限介绍、用户与角色、文件属性、权限修改及常见问题六大板块。详细说明了权限类型(r/w/x)、角色优先级、chmod/chown指令用法,以及目录权限、umask掩码、粘滞位等重点内容。掌握这些知识,可有效提升Linux系统安全性和灵活性,是管理员必备技能。喜欢的话别忘了点赞支持哦! ❤❤❤
316 6
|
7月前
|
安全 Linux 数据安全/隐私保护
Linux权限揭秘“Root与Sudo”
Root用户是Linux系统中的超级用户,拥有对系统的完全控制权。Root用户几乎可以执行任何命令,修改任何文件,甚至删除系统上的所有内容。因此,Root用户的使用需要非常谨慎,以避免潜在的安全风险。
285 6
|
10月前
|
Linux 数据安全/隐私保护
linux特殊权限!!
本文介绍了Linux系统中的特殊权限,包括suid、sgid和sbit。suid使普通用户在执行特定命令时获得root权限;sgid使用户在创建文件时继承目录的用户组权限;sbit确保用户只能删除自己在共享目录中创建的文件。此外,文章还讲解了chattr和lsattr命令,用于更改和查看文件的扩展属性,以及umask的概念和计算方法,帮助理解文件和目录的默认权限。
213 1
linux特殊权限!!
|
11月前
|
运维 监控 安全
Linux_权限理解(详细PLUS)
【10月更文挑战第3天】本文介绍了Linux系统中的权限管理基础,包括文件系统对象与权限关联、权限的继承性、字符与数字表示法的解读,以及用户、组与权限的动态交互。详细解析了`chmod`命令的高级用法和权限修改的风险,探讨了SUID、SGID和Sticky Bit等特殊权限的作用机制,并提出了基于角色的权限分配和定期权限审计的最佳实践。
218 11
|
11月前
|
Linux Go 数据安全/隐私保护
Linux入门2——初识Linux权限
Linux入门2——初识Linux权限
113 2
|
11月前
|
Linux 应用服务中间件 nginx
Linux下权限设置之suid、sgid、sticky
Linux下权限设置之suid、sgid、sticky
|
11月前
|
Linux 数据安全/隐私保护 Windows
Linux_权限理解(详细PLUS
Linux_权限理解(详细PLUS