Linux——权限

权限

权限的概念

意见事情能否运行被谁"做"

权限 = 人 + 事物属性

Linux上的用户分类

1、root,超级管理员,几乎可以做任何事情

2、普通用户

两者如何切换?

当现在身份是普通用户时,输入su指令就可以切换到root用户,再输入Ctrl + d就能切换回去

上面的su指令只是单纯的进行了身份变换

而使用su- 指令是让root进行重新登录,是处在自己的家目录里

那么当root用户想切换到普通用户时?其实root用户不需要知道密码就可以直接切换

对单条指令进行提权

当普通用户看不了一个文件后,就可以对单条指令进行提权

角色划分

1、文件拥有者

2、文件所属组

文件所属组怎么解释?

假设有两个组,A组B组;A组张三写了一段代码,组长小A想看,张三就把文件的other查看权限打开了,小A就可以看了,但是另一组的李四和小B也能看了

所以为了确保代码只能自己人看,就有了文件所属组这个概念,A组的所有人就把自己写的代码放在A组的所属组里。

3、文件的other

Linux的文件属性

可以有的属性是:读,写,执行

文件的权限和类型

文件类型

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

-:是普通文件,文本可执行程序,归档文件等

d:目录

b:块设备

c:字符设备

p:管道设备

s:网络socket文件

l:链接文件link

Linux下不用后缀来区分文件,是指的操作系统层面,而软件依旧需要用后缀来区分再来看一下文件类型后面9个符号的意义

文件自身具有的权限属性有三种

r ->可读

w ->可写

x ->可执行

  • ->该位置的权限是 没有

三个字符的位置含义是确定的

就像上面的cmd.txt文件拥有者:具有可读,具有可写,不具有可执行权限

如何修改文件的权限?

先看看文件权限

使用chmod指令修改

拥有者权限用 u 表示拥有者,+ 表示添加权限,r表示可读权限

上面的指令就表示,给test.txt文件添加可读的权限

再看看文件权限

看一下这里的指令

这里的 g 就表示所属组,所以意思就是给所属组加上可写的权限

还有

则是指给other添加可执行的权限

也可以一次性添加多个权限

去掉权限就是 -

如果是想给所有角色都加x可执行权限

这里的a就是all的意思

以及

再看看cmd文件,这里权限如果拥有就用1表示,没有就用0表示

则cmd文件的三个角色的权限就可以表示为 110 110 100

二进制转换为八进制,表示为664

所有文件权限又多了一种改法

上面的777中每个7就代表三个1,所以意思就是给所有的角色赋所有的权限

000则是取消所有的权限

有没有权限有什么区别?

现在先给test.txt文件取消所有的权限

当我们以普通用户的身份查看文件时,就会被拒绝

但当我们是超级用户时,就能无条件查看文件

这里我们想把test.txt文件的所有者改成root,但是好像改不了

但当指令用root用户发出后,指令就可以运行了

这里就是改变文件的所属组

这个时将拥有者和所属组都改变为一个用户

以及改变角色权限

相关推荐
甲鱼9292 小时前
MySQL 实战手记:日志管理与主从复制搭建全指南
运维
Johny_Zhao16 小时前
OpenClaw安装部署教程
linux·人工智能·ai·云计算·系统运维·openclaw
YuMiao1 天前
gstatic连接问题导致Google Gemini / Studio页面乱码或图标缺失问题
服务器·网络协议
chlk1232 天前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑2 天前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件2 天前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
碳基沙盒2 天前
OpenClaw 多 Agent 配置实战指南
运维
深紫色的三北六号3 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash3 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI3 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github