【Linux】Linux权限的理解

article/2025/8/29 21:42:27

文章目录

  • 🎪 Linux权限的理解
    • 🚀1.shell命令及其运行原理
    • 🚀2.Linux权限概念
      • ⭐2.1 用户与root身份切换
      • ⭐2.2 用户与用户身份切换
      • ⭐2.3 单条指令提权
    • 🚀3.Linux文件权限
      • ⭐3.1 文件属性(第一个字符)
      • ⭐3.2 文件角色划分与文件属性
      • ⭐3.3 文件权限值的表示方法
      • ⭐3.4 修改文件或目录读写执行权限
    • 🚀4.粘滞位
    • 🚀5.默认权限


🎪 Linux权限的理解

Linux权限是一个很重要的概念。如果没有权限的约束,那么一些重要的文件将可能会受到威胁。

🚀1.shell命令及其运行原理

Linux严格意义上说的是一个操作系统,我们称之为“核心(kernel) “ ,但我们一般用户,不能直接使用kernel。而是通过kernel的“外壳”程序,也就是所谓的shell,来与kernel沟通。如何理解?为什么不能直接使用kernel

从技术角度, Shell的最简单定义:命令行解释器(command Interpreter)主要包含:

  • 将使用者的命令翻译给核心(kernel)处理。
  • 同时,将核心的处理结果翻译给使用者。

Windows GUI:即为图形化接口,我们通过图形化界面来操作Windows内核,这里的GUI就是Windows的shell程序

Linux Bash: 即为命令行接口,我们通过命令行来操作Linux内核,这里的Bash就是Linux的shell程序

如果说你是一个闷骚且害羞的程序员,那shell就像媒婆,操作系统内核就是你们村头漂亮的且有让你心动的MM小花。你看上了小花,但是有不好意思直接表白,那就让你你家人找媒婆帮你提亲,所有的事情你都直接跟媒婆沟通,由媒婆转达你的意思给小花,而我们找到媒婆姓王,所以我们叫它王婆,它对应我们常使用的bash。

🚀2.Linux权限概念

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

  • 超级用户:可以再linux系统下做任何事情,不受限制
  • 普通用户:在linux下做有限的事情。
  • 超级用户的命令提示符是“#”,普通用户的命令提示符是“$”

这里用于账户切换的命令如下:

命令:su [用户名]
功能:切换账户

⭐2.1 用户与root身份切换

  • 输入su :接着再输入管理员密码
    此种情况下,相当于仅仅进行的身份切换,原先处在的家目录不变
  • 输入su-:接着再输入管理员密码
    此种情况相当于直接进行了账户切换,切换后root1会出于自己的家目录

在这里插入图片描述

除此之外,切换为root,使用su + 用户名可以再将身份切换为任意普通用户

在这里插入图片描述

⭐2.2 用户与用户身份切换

如果是用户,想要切到另外一个用户也可以用 su + 用户名,但没有密码的话将为失败
在这里插入图片描述
此时如果知道root账号密码,那么就可以先切换为root,然后root切换账户将会畅通无阻
在这里插入图片描述

⭐2.3 单条指令提权

对单条指令提权的指令如下:

语法:sudo [任意指令]
功能:对该指令以root的权限执行

对于我们刚刚的用户之间切换,我们就可以使用sudo su msr,然后输入自己的账户密码就可以完成对该条指令进行root提权。那岂不是root形同虚设?我们随便对一条指令进行sudo提权不就可以干任何事啦,但遗憾的是:
在这里插入图片描述
提权失败,这是由于我们当前用户未在linux系统的信任列表里面,即便你用了sudo提权并输入正确的用户密码(注意这里输的是自己的账户密码)也无法进行提权
关于注册用户进信任列表我们后续博客中说明。

🚀3.Linux文件权限

我们用以下展示的界面进行:权限 = 人 + 事务属性(文件 + rwx)

在这里插入图片描述

⭐3.1 文件属性(第一个字符)

上图中第一个字符表示文件属性:

  • d:表示目录
  • -:表示文本文件,可执行文件,归档文件等
  • b:块设备,例如硬盘、光驱等
  • c:字符设备,例如键盘、显示器
  • p:管道文件
  • s:网络socket文件
  • l:链接文件

⭐3.2 文件角色划分与文件属性

Linux中一个文件有三种角色划分:

  • 文件拥有者
  • 文件所属组
  • 文件other

Linux中一个文件有三种权限:

  • r:读
  • w:写
  • x:执行

上述图片中文件属性(第一个字符之后),有9个字符,每三个分别代表:文件拥有者,文件所属组,文件other权限,然后紧跟的两个用户名分别代表文件拥有者和文件所属组的名字,其他用户默认是other
在这里插入图片描述
还可以用以下图片来描述:
在这里插入图片描述

⭐3.3 文件权限值的表示方法

  • 字符表示方法
    在这里插入图片描述
  • 进制数值表示方法
    在这里插入图片描述

⭐3.4 修改文件或目录读写执行权限

我们可以用以下命令来修改:

语法:chmod u/g/o +/- r/w/x 文件/目录
功能:修改文件或目录的读写执行权限(注意中间无空格,如:chmod u+r test.c)

对于以下目录:
在这里插入图片描述
我们先来看看没有读写执行权限会怎样,此时除了root外,任何用户都不能对test.c进行读写执行:
在这里插入图片描述

1. 修改文件读写执行权限

  • 对test.c授予拥有者的读写执行权限
    命令:chmod u+rwx test.c
    在这里插入图片描述

  • 对test.c授予所属组的读写权限
    命令:chmod g+rw test.c
    在这里插入图片描述

  • 对test.c收回拥有者的读权限,收回所属组读写权限,授予other可执行权限
    命令:chmod u-r,g-rw,o+x test.c
    在这里插入图片描述

  • 以八进制形式收回所有权限,并再次完成以上操作
    命令1:chmod 000 test.c
    命令2:chmod 700 test.c
    命令3:chmod 760 test.c
    命令4:chmod 301 test.c
    在这里插入图片描述

  • 收回所有权限,并给所有人添加执行权限
    命令1:chmod 000 test.c
    命令2:chmod a+x test.c / chmod 111 test.c
    在这里插入图片描述

注意:可以执行授予或者收回文件的用户只能是root或者文件拥有者

2. 修改文件读写执行权限

目录的权限跟文件有很大的差别,我们可以把目录当成可执行程序,然后打开目录就相当于执行这个程序。

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

我们来验证一下:
在这里插入图片描述

3. 修改文件或目录拥有者及所属组

语法:chown 用户名 文件
功能:修改文件或目录的拥有者,也支持一起修改

语法:chgrp 用户名 文件
功能:修改文件或目录的所属组

注意: root可以支持任意修改,但拥有者只可以将所属组名改成自己的,但不支持将拥有者和所属组改成其他用户.

所以修改操作我们在root下进行:

  • 修改test.c的拥有者为msr

命令:chown msr test.c

在这里插入图片描述

  • 修改test.c的所属组为msr

命令:chgrp msr test.c

在这里插入图片描述

  • 修改test.c的拥有者和所属组为msr

命令:chown ljk:ljk test.c

在这里插入图片描述

🚀4.粘滞位

背景:在使用linux的时候,未来可能有一些共享目录,被所有的普通用户共享,用来保存普通用户产生的临时数据。因为是共享目录,要保存临时数据,那么这个目录肯定要对所有用户开放写权限,既然开放了写权限,那么用户删除目录的权限也就开放了,这就存在这一些问题,即便用户对他存放的文件添加了权限限制,但是其它用户依然有权限删除其它用户的数据,于是,粘滞位就在这样的时代背景下产生了。

添加粘滞位的方法:

语法:chmod +t 目录名
功能:添加粘滞位

添加了粘滞位的目录,这个目录下的文件只能被以下用户删除:

  • 超级管理员
  • 目录所有者
  • 文件所有者

🚀5.默认权限

我们为什么一创建文件或目录,它的默认权限就已经是确定了的呢?如下:

在这里插入图片描述
其实在linux中存在权限掩码这一概念,即umask.

语法:umask
功能:查看当前用户权限掩码

一般未做人为修改的话,root的权限掩码是0022,而普通用户的权限掩码是0002

第一位是特殊权限位,而后三位是用户权限位,真正对默认权限产生影响的是后三位。这里我们给三个概念:

  • 起始权限
  • 最终权限(默认权限)

作为一个文件,最初应该被赋予的权限应该是666(rw_rw_rw),作为一个目录,最初被赋予的权限应该是777(rwxrwxrwx),权限掩码:在起始权限中,去掉在umask中出现的权限,不能影响其它的任何权限
故我们得出结论:默认权限 = 起始权限 & (~umask)

我们来做一下验证:

对于普通用户定义的目录,起始权限:777 默认权限:775 umask:002
在这里插入图片描述

对于普通用户定义的文件,起始权限:666 默认权限:664 umask:002
在这里插入图片描述

我们也可以修改当前用户的umask,直接umask + 修改后的权限掩码即可,但是这次修改仅为临时修改,下次登录权限掩码会默认初始化一遍。如果想做到永久修改,得修改对应的配置文件才行。


http://chatgpt.dhexx.cn/article/BrvwA5yR.shtml

相关文章

Linux权限详解.

🧸🧸🧸各位大佬大家好,我是猪皮兄弟🧸🧸🧸 文章目录 一、Shell运行原理以及bash二、Linux权限三、权限管理1.改角色2.改属性a. ugo对wrx进行-b.八进制方案 四.常见权限问题1.目录权限2.umask权…

linux权限详细介绍

当我们使用"ls -l" 指令查看一个文件或目录信息的时候,系统会显示出,如下信息 这些信息中包含了这个文件的权限信息和所有者以及所在组,还有该文件的大小,该文件最后修改的日期时间,文件名称等信息.从左往右看, 第一个代表文件的类型, 如果是一个普通文件为"-&q…

Linux 权限

目录 Linux下的用户 文件的权限 Linux 下的文件 修改属性 修改人 目录权限 Umask 粘滞位 Linux下的用户 Linux 下有两种用户,超级用户( root )和 普通用户。 超级用户具有 Linux 下的最高权限,一般不受权限约束&#xff0c…

Linux权限及其理解

文章目录: Linux权限的概念Linux权限管理文件访问者的分类(人)文件类型和访问权限(事物属性)文件权限值的表示方法文件访问权限的设置方法权限掩码目录的权限粘滞位 总结 Linux权限的概念 与其它系统相比,…

Linux权限介绍

文章目录 Linux权限介绍1. shell命令及原理2. Linux权限的概念3. Linux权限管理3.1 人(用户)3.2 事物属性(文件类型和访问权限)3.3 文件访问权限的相关设置方法3.3.1 chmod3.3.2 chown3.3.3 chgrp 3.4 file指令3.5 目录权限3.6 默认权限3.7 粘滞位3.7.1.…

Linux的权限命令

上一篇👉重定向输出>和>>&系统管理命令&管道| 总目录👉一文带你轻松加愉快入门Linux 文章目录 1.文件权限2.Linux三种文件类型:3.文件类型标识4.文件权限管理: &a…

【Linux入门】Linux权限及管理

【Linux入门】Linux权限及管理 目录 【Linux入门】Linux权限及管理Linux权限管理文件访问者的分类文件类型和访问权限(事物属性) 文件权限值的表示方法文件访问权限的相关设置方法目录的权限实现共享目录粘滞位目录权限总结 作者:爱写代码的刚…

Linux-权限

文章目录 1. 认识Linux下用户的分类1.1用户切换1. 2 指令暂时提权 2. 什么叫做权限2.1. 文件属性文件的类型文件权限属性角色和具体的人(用户)是什么关系呢?权限 3. 见一见没有权限会有什么现象(见见)4. 权限的修改问题修改文件 拥…

【Linux】linux权限设置

文章目录 一、shell1. shell概念2. 进程 二、用户1. 用户分类2. 用户切换 三、权限1. 临时权限提升2. 权限的属性3. linux中角色类别4. 第一列文件属性 四、修改权限1. 修改文件权限2. 修改文件所属3. 修改文件权限八进制4. 粘滞位 五、linux默认权限设置1. 默认权限2. 权限掩码…

linux权限管理操作(权限设置)

权限设置 语法:#chmod 选项 权限模式 文档 注意事项: 常用事项: -r:递归设置权限(文档类型为文件夹的时候) 权限模式:就是该文档需要设置的权限信息 文档:可以是文件,也…

Linux权限

文章目录 一、Linux下用户的分类二、文件访问者的分类三、权限的分类四、权限的表现形式五、修改权限六、粘滞位七、补充说明 一、Linux下用户的分类 超级用户(root)、普通用户 超级用户可以在Linux系统下做任何事情,不受任何限制 普通用户受…

Linux权限(下)

Linux权限下 file指令目录的权限x权限r权限w权限 文件的默认权限umask码修改umask码 粘滞位背景谁能删除设有粘滞位的目录下的文件?设置粘滞位的注意事项 file指令 在此之前我们先了解一个指令,这个指令可以让我们更详细的了解文件的具体类型&#xff0…

Linux--权限讲解

文章目录 前言一、什么是shell外壳程序?二、为什么有shell外壳程序?三. Linux的用户基本介绍四. 用户间的相互转换及权限的索取五. 什么是权限?六. 权限的具体分类七. 文件权限属性的改变和‘人’的改变八. 为什么要有权限?九. 显…

Linux权限的基本知识

本文已收录至《Linux知识与编程》专栏! 作者:ARMCSKGT 演示环境:CentOS 7 目录 前言 正文 权限是什么? Linux权限的划分 Linux用户的切换命令 Linux文件权限 Linux文件类型 Linux文件权限 Linux角色划分 文件权限的访问…

【Linux】权限管理

目录 一.用户在使用Linux系统时的权限 1.概念 2.用户权限切换(角色切换) 1.普通用户切换root 2.root切换普通用户 二.用户在使用文件或目录时的权限 0.如何区分是文件还是目录? 1.拥有文件或目录权限的三个身份 2.文件或目录的权限 3.如何修改权限 &#…

【Linux】——权限详解

Linux权限的概念 在学习Linux权限之前,我们需要首先了解一下关于用户的知识。在Linux下有两种用户,分别是root用户和普通用户。root用户就好比充钱的VIP一样,可以在Linux下做任何事情,几乎不受限制,我们也称其为超级用…

linux中权限详解,linux 权限详解

在linux中的每个用户必须属于一个组,不能独立于组外。在linux中每个文件有所有者、所在组、其它组的概念 - 所有者 - 所在组 - 其它组 - 改变用户所在的组 所有者 一般为文件的创建者,谁创建了该文件,就天然的成为该文件的所有者 用ls…

Linux文件权限

Linux文件权限 Linux下一切皆文件 Linux中所有内容都是以文件的形式保存和管理,即:一切皆文件。 普通文件是文件。 目录(在win下称为文件夹)是文件。 硬件设备(键盘、硬盘、打印机)是文件。 Linux下有两种用户:超级用户(root&…

Linux权限管理

1.ACL权限 1.1ACL权限简介与开启 所有者、所属组和其他人的权限不够用,专门为用户设定独立的权限 #查看分区ACL权限是否开启 dumpe2fs -h /dev/sda3 如下图:蓝框就表示该分区具有acl权限 #临时开启分区ACL权限 mount -o remount,acl / #重新…

【Linux】一文掌握Linux权限

环境:centos7,腾讯云服务器 Linux文章都放在了专栏:【Linux】欢迎支持订阅🌹 前言 权限 一词相信大家都不陌生,与我们的生活密切相关。小区里的门禁制度、公司里的管理制度、学校里的校规规定、甚至是社交平台上的一些…