在 Linux 系统中,权限管理是保障系统安全与稳定运行的核心机制,对于普通用户而言,掌握权限的查看、修改与分配方法,不仅能提升操作效率,更能避免因权限不足或越权操作引发的问题,本文将从基础概念到实际操作,系统介绍 Linux 用户权限管理的相关知识。

Linux 权限体系基础
Linux 系统通过“用户-用户组-其他”的三级权限模型,对文件和目录进行精细化控制,每个文件或目录都关联三类身份:所有者(Owner)、所属组(Group)及其他用户(Others),每类身份又包含读(r)、写(w)、执行(x)三项基本权限,读权限允许查看文件内容或列出目录,写权限允许修改文件内容或创建/删除目录中的文件,执行权限则允许运行文件或进入目录,文件类型(如普通文件、目录、符号链接等)也会通过首位字符标识,-”表示普通文件,“d”表示目录。
权限查看与理解
使用 ls -l 命令可以查看文件或目录的详细权限信息,输出结果的第一列即为权限标识。drwxr-xr-- 中,首字符“d”表示目录,后续9位字符分为三组:所有者权限(rwx)、所属组权限(r-x)、其他用户权限(r–),对应的数字权限中,r=4、w=2、x=1,三组权限相加即可得到数字表示(如 rwx=7、r-x=5、r–=4),通过 ls -ld 可单独查看目录本身的权限,避免列出目录内容时的干扰。
用户与用户组管理
权限分配的核心是用户与用户组的关联,Linux 系统中的用户分为超级用户(root,UID=0)、系统用户(UID<1000)和普通用户(UID≥1000),用户组则是用户的集合,便于批量管理权限,常用命令包括:
useradd:创建新用户,useradd -m -s /bin/bash username(-m自动创建家目录,-s指定登录 shell)。usermod:修改用户信息,如usermod -aG groupname username(将用户加入指定用户组,-a表示追加,避免覆盖原有组)。groupadd:创建新用户组,groupadd developers。passwd:设置或修改用户密码,passwd username。
文件权限修改
chmod 命令:修改权限
- 符号法:通过
u(所有者)、g(所属组)、o(其他)、a(全部)结合 (添加)、(取消)、(设置)操作权限,chmod u+x script.sh(为所有者添加执行权限)、chmod go-rw file.txt(取消所属组和其他用户的读写权限)。 - 数字法:直接用数字组合,
chmod 755 file.txt(所有者 rwx=7,所属组和其他 r-x=5)。
chown 命令:修改所有者
chown owner:group file.txt 将文件所有者改为 owner,所属组改为 group,chown owner file.txt 仅修改所有者。

chgrp 命令:修改所属组
chgrp groupname file.txt 将文件所属组改为 groupname。
特殊权限与安全注意事项
除基本权限外,Linux 还支持特殊权限,用于满足复杂场景需求:
- SUID(4):仅对可执行文件有效,用户执行时暂时获得文件所有者的权限,
passwd命令。 - SGID(2):对可执行文件或目录有效,执行时获得所属组权限;目录创建的文件自动继承目录所属组。
- Sticky Bit(1):仅对目录有效,限制用户只能删除自己的文件,
/tmp目录。
安全方面需注意:避免随意开放 root 权限,使用 sudo 临时提升权限而非直接切换到 root;定期审查文件权限,敏感文件(如配置文件、密码文件)应严格限制访问(如 chmod 600 config.ini);谨慎使用 SUID/SGID,避免权限滥用。
实践案例:团队项目权限配置
假设有一个开发团队,需要共享项目目录 /project,配置步骤如下:

- 创建用户组:
groupadd devteam。 - 创建用户并加入组:
useradd -m -G devteam alice,useradd -m -G devteam bob。 - 设置目录权限:
chown -R root:devteam /project,chmod 2775 /project(SGID 确保新建文件继承组权限,775 允许组内成员读写执行)。 - 设置文件默认权限:
chmod 664 /project/*(普通文件组内可读写,其他用户只读)。
通过合理配置用户与权限,Linux 系统既能保障数据安全,又能支持多用户协作,掌握这些操作,是提升 Linux 使用能力的重要一步,建议结合实际场景多加练习,逐步深化理解。




















