【Linux】一文掌握Linux权限

article/2025/8/30 0:28:42

环境:centos7,腾讯云服务器

Linux文章都放在了专栏:【Linux】欢迎支持订阅🌹


前言

权限 一词相信大家都不陌生,与我们的生活密切相关。小区里的门禁制度、公司里的管理制度、学校里的校规规定、甚至是社交平台上的一些设置等。可以说我们人类是被生活中的种种“权限”所“约束”着。

在Linux中同样存在着权限的概念,最主要分为:文件权限以及目录权限,所“约束”的对象则为各种用户。

权限是什么?

简单来说,权限就是一件事情是否允许被“谁”来做。这里的“”是用来限制的,而人所访问的对象可能天然没有某种“属性

就比如说,我们不可能在爱奇艺里打英雄联盟、也不可能在英雄联盟里观看电影,因此我们可以这样认为:权限=人+事物属性

Linux中的用户分类

Linux中主要分为两类用户:超级用户(root)、普通用户
超级用户(root):权限非常高、几乎可以做任何事情、有且仅有一个。
普通用户:由超级用户创建、可以有很多个,在涉及到某些操作时会权限不足。

普通用户的创建以及删除

adduser 用户:增加用户
userdel -r 用户:删除用户并删除该用户所在的家目录
passwd 用户:为用户增加密码

用户的切换

su 用户切换到指定用户(root下可以随意切换,且不需要输入用户密码)另外,假如 没有指定用户,则会切换到root

su - 切换到超级用户家目录(类似于重新登陆),并显示最近登录信息

Linux的文件属性

文件的类型与权限

文件的权限分为以下三种:可读(r)、可写(w)、可执行(x)

Linux不用文件的后缀来区分文件类型,而是用文件属性中第一列的第一个字符来区分文件类型。

Linux下的文件类型主要有以下几种:

-:普通文件(文本、可执行、归档文件(压缩包)等)
d:目录
b:块设备(磁盘)
c:字符设备(键盘、显示器)
l:链接文件
s:网络socket文件
p:管道文件

目前最常见的是前两种,即普通文件以及目录,其余的后面遇到再细说。

文件后缀存在的意义

想用就用,方便人来看的
看作文件名的一部分
Linux虽不区分,但一些软件会区分,比如gcc/g++等

角色划分

Linux中对该用户所处的角色也进行了划分,主要分为以下三种:
文件拥有者:顾名思义即拥有该文件的人
文件所属组:文件所属的组群、一个组里可以有好多个用户
文件的Other:除了以上两种角色之外的所有人

分别对应文件属性中的以下位置:

注意:超级用户不受权限的约束,就比如这里的test.txt文件,所属组以及拥有者都是qidunyan,root对于该文件来说就属于Other,权限只有可读权限,但是root一样可以进行修改里面的内容!

文件角色权限的修改

我们可以使用chmod命令来修改文件的权限,但是只有文件的拥有者,以及root可以进行修改该文件。
chmod 用户符号 +/- 权限 目标文件
用户符号:
g:所属组
o:Other
u:拥有者
+:增加权限
-:减少权限
权限:
r:可读
w:可写
x:可执行

当然,我们除了用此方法外,还可以使用八进制数字进行权限修改,1表示有该权限,0表示无该权限。如下:

文件的拥有者以及所属组的更改

对于一个文件的拥有者以及所属组,我们也可以用chown以及chgrp进行更改。当然,作为普通用户,我们的权限是不足以对文件进行拥有者以及所属组的修改,所以我们需要进行切换为root,或者用sudo对指令进行提权。
chown 用户名 目标文件 :更改文件的拥有者
chgrp 用户名 目标文件:更改文件所属组
-R:进行递归式更改

file命令

file 目标文件:直接识别文件类型
-c: 详细显示指令执行过程,便于排错或分析程序执行的情形。
-z:尝试去解读压缩文件的内容

目录权限

我们可以很清晰的知道,一个普通文件的rwx,r代表可以查看该文件,w表示可以对该文件的内容进行修改,x表示该文件可以被执行,那么对于一个目录来说,rwx又意味着什么呢?
r(可读):可以查看该目录下的内容(即该目录下的所有文件以及文件属性)
w(可写):可以在该目录下创建新的文件或目录
x(可执行):可以进入该目录
-:无权限
(当然,这些权限限制的对象为普通用户,root无所畏惧)

文件的默认权限

在创建一个新的普通文件或目录时,创建出来的文件会自带默认权限。普通文件的默认权限为:664,目录文件的默认权限为:775。并且我们发现,Other的默认权限都不具有w,这主要是为了保护文件的安全性

默认权限是如何来的?

其实默认权限只是系统给我们看到的,不管是普通文件还是目录文件,其实都具有起始权限,也就是最开始的权限,普通文件的起始权限为:666,目录文件的起始权限为:777,而系统为了更好的控制文件权限,系统会自带默认的权限掩码,我们可以用umask进行查看,umask 0八进制数 进行修改默认的权限掩码。
默认权限=起始权限&(~umask)

粘滞位

先看以下这种情况,就是只要用户具有目录的写权限, 用户就可以删除目录中的文件, 而不论这个用户是否有这个文件的写权限.

换句话来说,当一个文件被所有人共享时,用户会收到权限的约束,但是拦不住用户进行删文件,所以,为了制裁这种不合理的现象,粘滞位就出来了。

chmod +t 目标目录:给目标目录增加粘滞位

-t:去除粘滞位

粘滞位只能给目录添加,一般给共享目录添加,防止乱删文件


end

生活原本沉闷,但跑起来就会有风!🌹


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

相关文章

Linux权限理解

一.Linux权限概念 Linux 下有两种用户:超级用户( root )、普通用户。 超级用户:可以再linux系统下做任何事情,不受限制 普通用户:在linux下做有限的事情。 超级用户的命令提示符是“#”,普通…

Linux权限全面解析 (欢迎各位Linux选手看过来,读到就是赚到)

目录 1.权限是什么 1.1生活实例理解权限 2.Linux下的权限 2.1Linux下的用户类别与事物属性 2.2介绍用户类别的具体意义 2.3具体实验 2.4文件类型简介 2.4.1 文件类型分类 2.4.2 文件类型依据 3.修改文件rwx权限 4.修改文件的owner,group 5.用户切换方式讲解 6.目录…

【Linux】Linux权限

Linux权限管理 文章目录 Linux权限管理1、Linux下权限的概念(1)用户权限(2)文件权限 2、权限的相关命令(1)用户切换超级->普通普通->超级 (2)用户提权(3&#xff0…

Linux权限详解

目录 1. 什么是权限 2. Linux上的用户 3.Linux权限管理 3.1 文件访问者的分类(人) 3.2 文件类型和访问权限(事物属性) 3.3 文件权限值的表示方法 3.4 文件访问权限的相关设置方法 chmod命令 chown指令 chgrp指令 umask指…

Linux用户权限

Linux用户权限 一、Linux权限的概念二、Linux文件权限管理1 、文件访问者的分类2 、文件类型和访问权限3、文件访问权限的相关设置方法 三、Linux目录的权限1、粘滞位 四、Linux权限的总结 一、Linux权限的概念 Linux下有两种用户:超级用户(root&#xf…

ESP32的CAN通信

目录 一、ESP32的CAN通信说明1.1、片内外设1.2、CAN库的查找1.3、MCP2515和SJA1000介绍1.4、CAN库的安装1.4.1、先下载库,再导入到arduino IDE中1.4.2、通过“库管理器”安装。 二、硬件说明2.1、硬件准备2.2、硬件连接 三、代码调试3.1、打开示例3.2、修改代码3.3、…

DSP28377S_CAN通信

CAN通信 CAN通信的由来CAN通信格式CAN通信配置实验验证结束语参考资料目录 CAN通信的由来 为适应“减少线束的数量”、“通过多个LAN,进行大量数据的高速通信”的需要,1986 年德国电气商博世公司开发出面向汽车的CAN 通信协议。CAN属于现场总线的范畴&a…

【CAN】CAN通信基础

1、CAN 总线与 CANopen 概述 CAN(Controller Area Network)总线是BOSCH为解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种串行数据通信协议,通信介质可以是双绞线、同轴电缆或光导纤维。 通信速率可达 1MBPS。 CAN 协议的一个…

通信接口CAN

CAN通信 目前(2021年6月)我用到的CAN电路原理图: 判断电路有没有接好,其中一个标准就是,测量接入的电阻阻值是不是60Ω。上图两个60.4Ω之间,可以接一个电容到GND。 1. Bit Timing(位时序) 参考连接 …

STM32之CAN通信

23.1关于 CAN 23.1.1 CAN 电气特性与协议 控制器局域网(Controller Area Network,CAN),是由德国BOSCH(博世)公司开发,是目前国际上应用最为广泛的现场总线之一。其特点是可拓展性好&#xff0…

FPGA实现CAN通信

FPGA实现CAN通信 1、CAN协议物理层和协议层 2、传输的波特率 3、FPGA实现思路 4、FPGA实现代码 1、CAN物理层和协议层 CAN与串口类似,都是异步通信,利用两根差分线来进行信号的传输。 在多节点进行数据传输时主要分为遵循ISO11898标准的高速短距离闭环形…

关于CAN通信速率设置

一、 CAN时钟周期(Tq)2*晶振时钟*BRP(波特率预分频值 baudrate prescaler) 一个CAN时间称为一个时间量子 Tq 1)同步段(Synchronization Segment):1个Tq,tSS 2&#x…

nano的CAN通信

我买的是微雪的树莓派用的SPI转CAN。现在用在jetson nano上。我看了一下俩模块的芯片用的都是一样的,引脚也都对得上,所以我就打算拿这个模块给nano做can通信。 具备CAN功能,使用SPI接口CAN控制器MCP2515,搭配收发器SN65HVD230。 …

CAN通信基础知识

CAN是Controller Area Network 的缩写(以下称为CAN),是ISO国际标准化的串行通信协议。由德国电气商博世公司在1986 年率先提出。此后,CAN 通过ISO11898 及ISO11519 进行了标准化。现在在欧洲已是汽车网络的标准协议。 CAN协议经过…

CAN通信详解

本章我们将向大家介绍如何使用STM32自带的CAN控制器来实现两个开发板之间的CAN通讯,并将结果显示在TFTLCD模块上。本章分为如下几个部分: 30.1 CAN简介 30.2 硬件设计 30.3 软件设计 30.4 下载验证 30.1 CAN简介 CAN 是Controller Area Network 的…

CAN通信总结

CAN通信总结 基本介绍 ​ 1. CAN通过两条通信线(双绞线)产生的电压差传输数据,一个CAN网络里的所有节点都挂在这两条通信线上,使用差分信号半双工通信。 ​ 2. CAN总线是广播类型的总线。所有节点都将始终接收所有通信&#xf…

CAN 通信原理学习

文章目录 CAN通信一:基本概述1.1 can总线是什么1.2 can总线协议的特点1.3 can的网络通信结构1.3.11.3.2 can协议网络层次 二:socket can在通信网络中的应用三 一个程序 CAN通信 一:基本概述 1.1 can总线是什么 CAN 是 Controller Area Net…

CAN通信协议

在 CAN 协议中,所有的消息都以固定的格式发送。总线空闲时,所有与总线相连的单元都可以开始发送新消息。两个以上的单元同时开始发送消息时,根据标识符(Identifier 以下称为 ID)决定优先级。ID 并不是表示发送的目的地…

CAN通信讲解(1)——基本知识

本文注意参考了《CAN入门书》,源于此书图片不再特殊标注 目录 1.1 CAN总线背景1.2 CAN总线定义1.3 CAN总线信号特性1.4 CAN总线传输1.5 OSI基本参照模型和CAN总线协议 1.1 CAN总线背景 为减少汽车线束数量,1986年,博世开发出面向汽车的CAN通…

CAN通信

通讯方式 UART:(Universal Asynchronous Receiver Transmitter:通用异步收发器/异步串行通信口),是一种通用的串行数据总线,用于异步通信,支持全双工。它包括了RS232、RS499、RS423、RS422和RS485等接口标准规范和总线…