Linux 用户管理与文件权限
Linux 作为多用户、多任务操作系统,用户账户、用户组与文件权限是系统安全和资源管控的核心基础。无论是日常运维、服务器管理还是程序部署,都必须熟练掌握相关命令与原理。本文从理论概念、核心配置文件、常用命令、权限规则到实战案例,全面讲解 Linux 用户管理与文件权限体系,搭配完整可复现的实操命令,适合零基础入门与复习巩固。
一、Linux 用户基础概念
- 用户标识:UID
Linux 系统不会直接识别用户名,而是依靠用户ID(UID) 区分每一个账户,UID 具有全局唯一性。
• root 超级管理员:UID 固定为 0,拥有系统最高所有权限;
• 系统用户:UID 通常小于 1000,主要用于运行后台服务、进程,一般不允许登录系统;
• 普通用户:UID 从 1000 开始依次分配,权限受限,仅能操作自身家目录及授权资源。
- 核心配置文件
系统所有用户信息均存储在固定配置文件中,是理解用户体系的关键。
-
/etc/passwd
保存所有用户基础信息,所有用户均可读取,文件内容以冒号 : 分割为 7 个字段,依次为:用户名、密码占位符、UID、GID、用户备注、家目录、默认登录 Shell。 -
/etc/shadow
专门存储用户加密密码、密码有效期、锁定状态等安全信息,权限严格,仅 root 用户可以查看和编辑,共 9 个字段,保障账户密码安全。
二、用户管理命令实操
Linux 提供两套常用用户创建命令:useradd(命令行模式)和 adduser(交互式模式),搭配修改、删除、密码管理命令,完成全流程用户操作。所有涉及系统级修改的命令,普通用户需加 sudo 提权执行。
- 创建用户
• useradd:纯命令行创建,需手动补充密码、家目录等配置
-m 自动创建用户家目录
• adduser:交互式创建,一步步引导设置密码、个人信息,自动生成家目录,新手更友好
2. 设置/修改用户密码
使用 passwd 命令管理密码,root 可修改任意用户密码,普通用户仅能修改自身密码。
为指定用户设置密码

- 修改用户信息
usermod 用于调整已有用户的用户名、锁定账户、归属组等信息:
-L 锁定账户,禁止登录
-U 解锁账户
-l 修改登录用户名
-c 添加用户备注信
- 删除用户
userdel 用于删除账户,搭配 -r 参数可同步删除用户家目录、邮件等关联文件,避免残留垃圾文件:
-r 连带删除家目录

三、用户组管理
用户组可以将多个用户归为一组,统一分配权限,是实现多用户资源共享的核心方式。同一组内的用户可按照组权限访问共享文件/目录。
- 核心配置文件
/etc/group:存储系统所有用户组信息,冒号分割为 4 个字段:组名、组密码占位符、组ID(GID)、组内成员列表。
-
常用组管理命令
-
创建新用户组
-
修改组名称
格式:groupmod -n 新组名 旧组名
- 将用户添加至附加组
将 test_1 加入 shared_1 组

- 删除空用户组

四、Linux 文件权限体系
文件权限是 Linux 安全体系的重中之重,系统通过权限控制文件所有者、所属组、其他所有用户的访问行为。
- 权限查看与基础标识
使用 ls -l 命令查看文件/目录详细信息,首列即为权限标识。
• 文件类型:- 代表普通文件,d 代表目录,l 代表软链接;
• 权限分为三段:所有者权限、所属组权限、其他用户权限,每段固定 3 位;
• 权限字符定义:
◦ r(读):对应数值 4,文件可读取内容,目录可查看列表;
◦ w(写):对应数值 2,文件可编辑删除,目录可新建/删除文件;
◦ x(执行):对应数值 1,文件可运行脚本/程序,目录可进入。
- 默认权限掩码 umask
系统新建文件、目录的默认权限由 umask 掩码决定,计算规则:
• 普通文件原始最大权限:666,最终权限 = 666 - umask 值
• 目录原始最大权限:777,最终权限 = 777 - umask 值
系统默认 umask 为 022,因此:
• 新建文件默认权限:644
• 新建目录默认权限:755
可使用 umask 命令查看当前掩码,也可临时/永久修改。
- 权限修改命令 chmod
两种使用方式:八进制数字模式(简洁常用)、符号模式(精准修改),-R 参数可递归修改目录及内部所有文件权限。
- 八进制模式(推荐)
设置文件权限为 755
递归修改整个目录权限
- 符号模式
u=所有者 g=所属组 o=其他用户 a=所有用户
给所有者添加执行权限,移除组用户写权限

- 修改文件归属 chown
chown 命令用于修改文件/目录的所有者和所属组,格式:chown 所有者:所属组 文件名。
修改文件所有者为 root,所属组为 zhang
递归修改目录归属
五、综合实战案例(完整可执行)
结合用户、用户组、文件权限知识,完成一套从创建用户、组建共享组、配置共享目录到权限管控的完整实操,复制命令即可在 Linux 环境运行。
步骤1:创建测试用户并设置密码

查看用户信息
步骤2:创建共享用户组,添加用户
将用户加入共享组
查看组内成员

步骤3:切换用户,创建测试目录与文件
步骤4:配置共享目录权限(组内用户可读写)
修改目录归属为 testuser:testgroup
sudo chown -R testuser:testgroup testdir/
设置权限 770:仅所有者和组内用户可读写执行,其他用户无任何权限
sudo chmod -R 770 testdir/
ls -l
步骤5:清理测试环境
删除用户及家目录

六、知识点总结
-
Linux 依靠 UID、GID 识别用户与用户组,/etc/passwd、/etc/shadow、/etc/group 是三大核心配置文件;
-
用户生命周期管理:useradd/adduser 创建、usermod 修改、userdel 删除、passwd 管理密码;
-
用户组用于批量管控权限,是实现多用户文件共享的核心方案;
-
文件权限由 r、w、x 组成,支持数字与符号两种修改方式,chmod 改权限、chown 改归属;
-
umask 决定新建文件和目录的默认权限,递归参数 -R 常用于目录批量权限配置。
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐

所有评论(0)