《Linux 用户管理与文件权限详解-——从useradd到chmod》
Linux 用户管理与文件权限知识框架
一、Linux 安全基础
· 核心机制:基于用户账户的访问控制,每个用户分配唯一 UID。
· 用户分类:
· root 用户(UID=0):系统管理员,最高权限。
· 系统用户(UID<500):伪用户,用于后台服务,不可登录。
· 普通用户(UID≥500):真实用户,可登录系统。
· 关键文件:
· /etc/passwd:用户名、UID、GID、备注、家目录、Shell(密码用 x 占位)。
· /etc/shadow:加密密码及密码管理信息(仅 root 可读)。
· /etc/group:组名、组密码、GID、组成员列表。
二、用户管理命令
· useradd:添加新用户。常用参数:-m(创建家目录并复制默认配置)、-c(备注)、-e(过期日期)、-g(初始组)、-G(附加组)、-s(Shell)。
· adduser:交互式添加用户,默认提示设置密码及家目录。
· usermod:修改用户信息。参数:-c(备注)、-e(过期)、-g(主组)、-G(附加组)、-l(改登录名)、-L(锁定)、-U(解锁)、-p(密码)。
· userdel:删除用户,-r 同时删除家目录及邮件池。
· passwd:修改密码,-e 强制下次登录改密码;root 可指定用户名。
· chpasswd:批量修改密码,从标准输入读取 username:password 对。
· chsh:修改用户登录 Shell,需指定完整路径。
· chfn:修改用户备注字段(GECOS)。
· chage:管理用户密码有效期,日期格式 YYYY-MM-DD。
三、组管理命令
· groupadd:创建新组,默认无成员。
· groupmod:修改组,-g 改 GID,-n 改组名。
· groups / id:查看用户所属组。
四、文件权限体系
· 权限三要素:读(r)、写(w)、执行(x)。
· 三个安全等级:属主(u)、属组(g)、其他用户(o)。
· 文件类型标识(ls -l 首字符):- 文件,d 目录,l 链接,c 字符设备,b 块设备,n 网络设备。
· 权限表示:符号模式(rwxrwxrwx)或八进制模式(如 755)。
· 默认权限(umask):文件=666-umask,目录=777-umask;umask 命令可查看或设置。
五、权限修改与所有者管理
· chmod:修改权限,八进制(chmod 755 file)或符号(chmod u+rwx,g-w file),-R 递归。
· chown:修改属主或属组(chown user:group file),-R 递归;仅改属组可用 chown :group。
· chgrp:修改属组(等价于 chown :group)。
六、共享文件实现方法
· 思路:将用户加入同一组。
· 步骤:groupadd 创建组 → usermod -G 加入用户 → chown :group 设置目录属组 → chmod g+rwx 赋予组权限。
· 注意:需文件所有者或 root 授权。
七、关键文件位置与用途
· /etc/passwd:用户账户数据库。
· /etc/shadow:加密密码及有效期。
· /etc/group:组账户数据库。
· /etc/default/useradd:useradd 默认配置。
· /etc/skel/:新用户家目录模板。
· /etc/profile、/etc/login.defs:系统环境及 umask 默认值。
Xshell实操截图
Linux用户管理&文件权限全套实操命令(VMware Ubuntu/Debian,逐条可直接复制执行)
前置说明
- 绝大多数用户/组操作需要管理员权限,命令前加 sudo ;切换root用 sudo su -
- 统一测试用户名: stu01 ,测试组名: share_group ,测试目录: /home/stu01/share_dir ,测试文件: test.txt
- 每条命令对应小结知识点,配套练习题全覆盖,按顺序执行即可
一、用户基础概念 & /etc/passwd /etc/shadow 相关命令
- 查看系统用户文件(理解UID、GID、7字段)
- 查看useradd默认配置
二、创建用户(useradd / adduser)
- useradd 创建带家目录用户(-m 复制skel配置)
- useradd 无-m参数(三无用户演示,可选)
- adduser 交互式创建用户(Ubuntu专用)
三、修改用户信息 usermod / passwd / chsh / chfn / chage
- usermod 修改备注、锁定/解锁、改名
- passwd 密码管理
- chsh 修改登录shell
- chfn 修改用户个人信息(备注扩展)
- chage 账户有效期管理
四、用户组管理 groupadd / groupmod / /etc/group
创建共享组
将用户加入附加组
- 修改组名、修改GID
五、删除用户 userdel
六、文件权限基础查看 ls -l、umask
- 查看文件权限、文件类型
- 创建测试文件、目录
七、修改文件权限 chmod(八进制+符号模式)
- 八进制权限设置
- 符号模式权限
八、修改文件属主/属组 chown(实现组共享)
九、共享目录完整实现整套命令
