Linux入门学习:Linux权限理解

文章目录

    • [1. 🚀Linux权限管理](#1. 🚀Linux权限管理)
    • [2. 🚀文件权限值的表示方法](#2. 🚀文件权限值的表示方法)
    • [3. 🚀文件访问权限的相关设置方法](#3. 🚀文件访问权限的相关设置方法)
    • [4. 🚀file指令](#4. 🚀file指令)
    • [5. 🚀目录的权限](#5. 🚀目录的权限)
    • [6. 🚀粘滞位](#6. 🚀粘滞位)

Linux下有两种用户:超级用户(root)、普通用户。

  • 超级用户:可以再Linux系统下做任何事情,不受限制

  • 普通用户:在linux下做有限的事情。

  • 超级用户的命令提示符是"#",普通用户的命令提示符是"$"

1. 🚀Linux权限管理

1️⃣在Linux中,访问文件的总共有三类人

  • 文件和文件目录的所有者:User(一般缩写为u)
  • 文件和文件目录的所有者所在的组的用户:Group(一般缩写为g)
  • 其它用户:Others (一般缩写为o)

2️⃣根据访问文件人的类别,可以构成文件的基本属性 :我们用 ll 命令查看文件的基本属性

🔹文件属性各个位置具体意义

3️⃣文件的基本类型(文件属性第一位的分类)

  • d文件夹
  • -普通文件
  • l: 软链接(类似Windows的快捷方式)
  • b:块设备文件(例如硬盘、光驱等)
  • p:管道文件
  • c:字符设备文件(例如屏幕等串口设备)
  • s:套接口文件

2. 🚀文件权限值的表示方法

文件属性的第一位表示文件的类型,那么2-10位那一串字符,表示文件的权限值,前3位为root的权限,中间三位表示所属组的权限,后三位表示other的权限

不同的字符具有怎样的意义

  • r:三位权限符的第一位,对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限
  • w:三位权限符的第二位,对文件而言,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限
  • x: 三位权限符的第三位,对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限
  • -:表示没有该位置的权限

🔹列表分类(所有权限种类):

Linux表示 说明 Linux表示 说明
r - - 只读 - w - 只可写
- - x 仅可执行 r w - 可读可写
- w x 可写和可执行 r - x 可读可执行
r w x 可读可写可执行 - - - 无权限

🔹除了字符的表达方法,权限还有八进制的表达方法,以值的形式表达

权限符号 八进制 二进制
r - - 4 100
-w- 2 010
- -x 1 001
rw- 6 110
-wx 3 011
r-w 5 101
rwx 7 111
- - - 0 000

🔻 以值的形式表达,其实就是将rwx按位看作是二进制,有权限为1,无权限为0,例如:rw-按位二进制表达为110,它的值形式表达就是6;-w-按位二进制表达为010,它的值形式表达就是2。

3. 🚀文件访问权限的相关设置方法

1️⃣🔹指令:chmod

作用:设置文件的访问权限

格式:chmod [人物][权限字符][权限] 文件名

🔸人物: u -> 文件拥有者 , g -> 所属组 ,o -> 其他人,a -> 所有人。

🔸权限字符:

  • +:向权限范围增加权限代号所表示的权限
  • -:向权限范围取消权限代号所表示的权限
  • =:向权限范围赋予 权限代号所表示的权限

    🔸常用选项
  • -R递归改变权限
  • 说明:只有文件的拥有者和root才可以改变文件的权限

2️⃣chmod用八进制数字改变权限

3️⃣ chown / chgrp

作用: chown 是 修改文件的拥有者 的权限指令,chgrp是 修改文件或目录的所属组 的权限指令。

格式:chown/chgrp 用户名 文件名

🔸常用选项-R递归改变修改文件或目录的拥有者/所属组

4️⃣ umask
功能:查看或修改文件掩码来以此设置文件创建的初始权限

🔸说明:文件创建的初始权限 (值表达) = mask & ~umask = mask - umaskmask为默认权限,umask为权限掩码;

🔸第二,新建文件夹默认权限=0666新建目录默认权限=0777

🔸第三,超级用户默认掩码值为0022普通用户默认为0002

🔸第四,可以通过umask 权限值设置权限掩码。

4. 🚀file指令

功能说明:辨识文件类型。

cpp 复制代码
语法:file [选项] 文件或目录...

5. 🚀目录的权限

  • 可执行权限: 如果目录没有可执行权限(x), 则无法cd到目录中
  • 可读权限: 如果目录没有可读权限®, 则无法用ls等命令查看目录中的文件内容.
  • 可写权限: 如果目录没有可写权限(w), 则无法在目录中创建文件, 也无法在目录中删除文件

❓于是, 问题来了

🔸换句话来讲, 就是只要用户具有目录的写权限, 用户就可以删除目录中的文件, 而不论这个用户是否有这个文件的写权限

🔸例如,Sherry创建了一个目录,在目录当中创建了一个文件,并设置目录的other具有rwx权限,目录内的文件的other只有r权限,虽然Lvision不具有这个文件的w权限,但有这个目录的w权限,就可以删除这个由Sherry创建的文件

🤔这好像不太科学啊, 我Sherry创建的文件,即使你由这个目录的写(w)权限,但是你没有我这个文件的写权限, 😕凭什么被你Lvision可以删掉?

为了解决这个不科学的问题, Linux引入了粘滞位的概念。

6. 🚀粘滞位

指令:chmod +t 文件名

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

一、超级管理员删除

二、该目录的所有者删除

三、该文件的所有者删除

针对以上情况,可以对目录添加粘滞位来处理

🔸关于权限的总结

  • 目录的可执行权限表示你可否在目录下执行命令
  • 如果目录没有-x权限 ,则无法对目录执行任何命令,甚至无法cd 进入目录, 即使目录仍然有-r 读权限(这个地方很容易犯错,认为有读权限就可以进入目录读取目录下的文件)
  • 而如果目录具有-x权限,但没有-r权限,则用户可以执行命令,可以cd进入目录 。但由于没有目录的读权限所以在目录下,即使可以执行ls命令,但仍然没有权限读出目录下的文档

本文就到这里,感谢你看到这里❤️❤️! 我知道一些人看文章喜欢静静看,不评论🤔,但是他会点赞😍,这样的人,帅气低调有内涵😎,美丽大方很优雅😊,明人不说暗话,要你手上的一个点赞😘!

相关推荐
S+叮当猫1 小时前
第五部分:2---信号的介绍、产生、处理
linux·运维·服务器
东城绝神2 小时前
《Linux运维总结:基于ARM64+X86_64架构CPU使用docker-compose一键离线部署mongodb 7.0.14容器版副本集群》
linux·运维·mongodb·架构
handsome2133 小时前
WSL中使用GPU加速AMBER MD--测试
笔记·学习
WZF-Sang4 小时前
Linux权限理解【Shell的理解】【linux权限的概念、管理、切换】【粘滞位理解】
linux·运维·服务器·开发语言·学习
狂飙的张兴发5 小时前
认知小文2《成功之路:习惯、学习与实践》
学习·考研·职场和发展·跳槽·学习方法·改行学it·高考
小橞5 小时前
Linux搭建简易路由转发
linux·运维·服务器
嵌入式DZC5 小时前
搭建内网文件服务器(FTP),以及实现内网Gitee
运维·服务器
robot_大菜鸟5 小时前
linux-L7-linux 查看json文件
linux·运维
爱编程的小新☆5 小时前
C语言内存函数
c语言·开发语言·学习
Flying_Fish_roe5 小时前
linux-网络管理-网络抓包
linux·网络·php