Linux用户、用户组与文件权限实操笔记
一、课程基础知识点概念理解Linux权限底层管控逻辑Linux依托用户ID(UID)、组ID(GID)校验身份限制用户对文件、文件夹、硬件设备的访问权限是系统做资源隔离、安全管控的基础机制。用户用户组管理命令概念useradd 创建新系统用户账号Ubuntu普通用户执行必须前置 sudo 提权补充 -m 参数可自动生成用户家目录规避后续 su 切换用户目录缺失报错 -G 用来指定用户的附属用户组。groupadd 新建用户组修改系统组配置需要管理员权限普通用户直接运行会抛出 Permission denied 权限拒绝报错。usermod 对已创建完成的用户做属性修改常用 -aG 追加附属用户组不会覆盖用户原本加入的组别。groupmod 调整用户组配置典型参数 -n 用于重命名用户组。文件三层权限主体与rwx权限释义单个文件的访问权限划分三类身份属主文件创建拥有者、属组归属的用户组内成员、其他所有系统用户。三类身份各自配套3类权限r 读八进制数值4可查看文件内容、列出目录内部文件清单w 写八进制数值2能编辑、删除文件可在目录里新增、删除内部文件x 执行八进制数值1能运行可执行程序可以进入目标目录三组权限拼接后支持换算成八进制数字简写权限例如 rw-r–r-- 对应数值 644 。权限归属修改命令释义chmod 修改文件、目录的rwx读写执行权限分八进制数字赋值、符号增减权限两种书写格式。chown 变更文件的所有者、所属用户组格式 属主:属组 可一次性完成两项归属修改。chgrp 仅单独调整文件绑定的所属用户组。共享目录业务作用让多名归属同一用户组的用户对同一个目录内的文件互相读写协作同时拒绝组外无关用户访问目录资源搭配SGID特殊权限目录中新创建的文件会自动继承目录所属用户组省去手动修正文件归属的重复操作。二、命令体系框架用途核心参数一账号组别管理类命令 核心用途 高频参数说明sudo groupadd 组名 创建自定义用户组 无额外必填参数全局系统改动依赖sudo提权sudo useradd -m -G 附属组 用户名 新建用户、自动创建家目录、绑定附属组别 -m 自动生成/home下的用户家目录 -G 设置附属用户组sudo usermod -aG 目标组 用户名 给存量用户追加附属组别 -aG 追加组别避免原有附属组被覆盖sudo groupmod -n 新组名 旧组名 完成用户组重命名 -n 参数指定更新后的组别名称二权限与归属修改类命令 核心用途 高频参数说明chmod 权限值 资源路径 修改读写执行权限 八进制写法如 chmod 750 文件 符号写法 gw 给属组新增写入权限、 o-r 回收其他用户读取权限sudo chown 用户:组 文件路径 一次性修改文件属主属组 冒号分隔所有者、所属组别跨所有者文件需要sudo提权sudo chgrp 目标组 文件路径 单独修改文件所属组别 仅变更组归属不改动文件属主三辅助验证命令ls -l 查看文件完整权限、属主、属组信息追加 -d 专门查看目录本身属性su - 用户名 完整切换用户环境加载该账号的环境变量与家目录passwd 用户名 为用户配置登录密码两次输入密码字符必须完全一致才可校验通过三、Xshell分步实操流程Ubuntu环境前置避坑提醒Ubuntu普通用户终端提示符为 $ 所有改动系统账号、全局目录配置的命令开头必须补充 sudo 申请管理员权限密码输入阶段终端不会回显字符正常录入后回车即可用 useradd 创建用户务必加 -m 生成家目录规避切换用户时报目录不存在故障。步骤1创建用户组、测试用户bash创建共享组别sudo groupadd share_group新建两名测试用户自动生成家目录、绑定附属组sudo useradd -m -G share_group user1sudo useradd -m -G share_group user2分别设置登录密码两次密码保持完全相同sudo passwd user1sudo passwd user2组别重命名演示sudo groupmod -n team_share share_groupsudo groupmod -n share_group team_share给user1追加root附属组sudo usermod -aG root user1步骤2查看原生文件权限bashsu - user1touch test.txtls -l test.txtexit输出权限拆解以 -rw-r–r-- 为例属主权限 rw-(6) 、属组 r–(4) 、其他用户 r–(4) 整体权限八进制 644 。步骤3两种格式调整文件权限bash八进制赋值写法chmod 754 /home/user1/test.txtls -l /home/user1/test.txt符号精细化调整权限chmod gw /home/user1/test.txtchmod o-r /home/user1/test.txtls -l /home/user1/test.txt步骤4变更文件所有者、所属组bashsudo chown user2:share_group /home/user1/test.txtsudo chgrp root /home/user1/test.txtsudo chgrp share_group /home/user1/test.txtls -l /home/user1/test.txt步骤5搭建SGID共享协作目录bashsudo mkdir /data/share_dirsudo chown root:share_group /data/share_dir2代表开启SGID位770限制仅属主、组内成员可访问sudo chmod 2770 /data/share_dirls -ld /data/share_dir可用性校验user1新建文件su - user1touch /data/share_dir/u1_file.txtexituser2编辑同一份文件验证跨用户读写共享能力su - user2echo “共享写入测试内容” /data/share_dir/u1_file.txtcat /data/share_dir/u1_file.txtexit四、实操踩坑问题复盘截图区域文字说明发布时插入你的本地截图报错 groupadd: Permission denied 成因是普通用户缺少系统配置修改权限解决方案命令前置 sudo 做管理员提权。用户切换提示家目录缺失根源是 useradd 未配置 -m 参数没有自动创建家目录修正手段重建目录、修正目录归属后续新建用户统一补充 -m 参数。passwd提示密码不匹配两次录入的密码字符存在偏差重新输入两遍完全一致、长度≥8位的密码即可完成校验。文件锁占用提示权限补齐sudo后重试若有程序占用组配置文件等待几秒再次执行命令。五、学习总结Linux的UID、GID是整套访问权限体系的身份基础普通账号修改系统账号、全局资源配置强制依靠 sudo 临时申请root管理员权限。权限可通过八进制数字快速简写SGID特殊权限适配团队共享目录场景减少重复修改文件归属的工作量。账号创建命令的参数细节容易触发运行报错实操前提前梳理参数作用、预判故障点能大幅降低排错耗时。

相关新闻