在 Linux 系统中,用户身份管理是系统安全与权限控制的基石。主要分为两类用户:
- Root 用户(超级管理员):拥有系统的最高权限,可以执行任何操作,包括安装软件、修改系统配置、管理其他用户等。
- 普通用户:权限受限,只能操作自己的文件和目录,无法影响系统整体环境
身份切换
su:切换到 root 用户
su - yyy:切换到普通用户yyy
sudo:指令的短暂提权
比如:安装软件,安装到系统中,需要管理员root权限------其实只安装了一份,允许大家同时使用
权限
权限的本质是能不能做什么事情
我们为什么要将用户进行区分呢?全都一样不是更好管理吗?
- 控制用户行为,防止一些不必要的错误发生
- 权限首先限制的对象是角色(人)。要求必须具有对应属性的角色才可以对文件进行对应的操作
权限 = 角色 + 目标属性
Linux下一切皆文件,面对的所有内容本质上都是文件。如果是文件就存在对应的属性:读(r)、写(w)、执行(x)
在Linux中所有的角色都被分为三大类:
- 拥有者
- 所属者
- other

当我们在一个目录下执行ll命令时,会出现以上图片的内容。
其中第一个yls是拥有者的名字,第二个yls则是所属组的名字。那other呢?为什么不显示other?很简单。other不需要记录 。
拥有者很好理解,即谁拥有这个文件,谁就是这个文件的拥有者。
那什么是所属组?为什么要有所属组?
所属组是 Linux 中一组用户的集合。简单来说,拥有者代表哪个用户拥有这个文件,这个用户属于哪个用户组,这个用户组就拥有这个文件。所属组代表哪个用户组拥有它。
更精细化的权限管理,首先要有更精细化的角色身份。

第一个-代表的是文件类型,这个在后面再细说。接下来9个字符代表的是各个角色的文件权限。

其中r代表允许读w代表允许写x代表允许执行。没有对应字母则代表该角色没有对应权限,无法执行对应操作。
那我们是否可以修改文件的对应权限呢?如果可以,如何操作?
chmod u-r my.txt:拥有者,删去r权限
chmod u+r my.txt:拥有者,加上r权限
chmod g-r my.txt:所属组,删去r权限
chmod g+r my.txt:所属组,加上r权限
chmod a+r my.txt:所有人加上r权限
chmod o+r my.txt:other加上r权限
重点:
- 能改任何人的文件权限吗?用户只能更改自己的文件权限
- 没有权限会怎么样?无法操作,被系统拒绝访问
- 确认权限信息是,系统会先确认用户是谁?拥有者,所属组还是other?
在centos下,用户角色确定只确定一次,顺序是:拥有者,所属者,other - root用户的权限?不受权限约束
- 如何理解可执行?可执行权限 != 文件可以执行
可执行是允许执行,不拦着你
修改角色
首先我们需要直到,系统默认不允许我们将文件给别人。想要将文件给别人,必须要有高权限。即root权限。
sudo chown yls::yls cmd: 修改后,cmd文件的拥有者是yls,所属组也是yls
修改文件权限
两态的:可以看成二进制
允许读 r(1) 不允许读 -(0)
允许写 w 不允许写 -
允许执行 x 不允许执行 -
因为文件权限可以看作二进制,因此我们可以直接使用chmod+八进制直接修改文件权限:

(注意看code.c文件的权限变化)
几个重要问题
想进入一个目录,需要什么权限?
需要可执行权限(x权限)
rw权限对于目录意味着什么?
如果对目录没有r,就无法查看目录里面的文件
如果对目录没有w,就无法在指定目录新建文件
Linux多用户之间怎么互相隔离?
任何用户都无法进入其他用户的家目录!

为什么默认权限是我们看到上面的这样?
对于普通文件 来讲:起始权限是666,默认不带可执行
对于目录文件 来讲:起始权限是777,默认携带可执行
umask
我们可以看到最终权限和我们设定的权限不太一样,这是为什么呢?
因为系统中会存在一个叫做权限掩码的概念:最终权限 = 起始权限 & (~umask)
- umask目的是什么?希望凡是在umask中出现的权限,都不允许在最终权限中出现
- 为什么要有umask?
a.默认权限,有OS自主决定,无法在创建前进行修改------系统可配置,可以灵活满足需求的一种表现
b.特殊情况下,配置umask,可以控制文件的默认权限,让我们的艾玛都是可控的
umask是可以修改的。
umask 0777:就是把umask权限修改成0777
粘滞键
一个文件是否能被删除,与文件本身无关!与文件所处的目录的w权限有关。
对于共享类文件,不想让非文件拥有者删除对应的文件!
任何一个人都能在共享目录下新建,但是不能让非文件拥有者删除==>权限标志位:t,粘滞位:chmod +t 对应目录。
特征:只能给需要共享的目录添加粘滞位