Linux用户管理和文件权限实操完整博客

📅 2026/7/9 5:46:46
Linux用户管理和文件权限实操完整博客
一、核心知识框架总结一Linux安全与用户基础用户UID区分规则root管理员用户UID固定为0系统后台伪用户UID小于500用于各类服务进程普通新建用户UID从1000开始分配。用户信息存储文件/etc/passwd保存所有用户基础信息每行以冒号分割7段内容分别是用户名、密码占位符x、UID、GID、用户备注、家目录、登录shell。x仅代表密码加密存放真实加密密码不在此文件。/etc/shadow仅root用户拥有读取权限存放加密后的用户密码、密码修改周期、账户过期规则一行9个字段管控密码安全策略。root用户登录方式su - 或 su root 输入root密码即可切换管理员执行exit命令退出root回到普通用户sudo可以让普通用户临时借用管理员权限执行受限操作。二用户管理相关命令useradd底层创建用户不加-m参数创建三无用户无家目录、无密码、无登录shelluseradd -m 用户名会自动创建家目录复制/etc/skel下默认配置文件。adduser交互式创建用户自动创建同名用户组、家目录引导设置密码、填写用户备注操作简单适合新手。passwd修改密码普通用户仅能修改自身密码root执行passwd 用户名可修改任意用户密码passwd -e 用户名强制用户下次登录必须修改密码。usermod修改用户各项信息-c修改备注、-G添加附加用户组、-l修改登录名、-L锁定账户、-U解锁账户。userdel删除用户直接userdel仅删除/etc/passwd内用户记录userdel -r 用户名会同步删除用户家目录与邮件文件。三用户组管理相关命令groupadd创建全新用户组usermod -aG将指定用户追加加入附加组groupmod -n 新组名 旧组名修改已有用户组名称/etc/group 文件存储所有用户组信息冒号分割4段组名、组密码占位、GID、组内用户列表。四文件权限体系ls -l 查看文件权限信息第一字符区分文件类型-普通文件、d目录文件、l软链接后面9位权限分为三段分别对应用户u所有者、组g所属组、其他o其余所有用户。权限标识含义r可读、w可写、x可执行、-无对应权限。八进制权限规则r4w2x1数字相加代表完整权限如6rw、7rwx。umask掩码控制新建文件、目录默认权限。文件最大权限666目录最大权限777最终权限默认最大值减去umask值系统默认umask通常为0022。五权限与文件归属修改命令chmod修改文件权限-R代表递归修改目录内所有内容支持两种写法八进制数字模式、符号模式u/g/o/a /- rwx。chown修改文件所有者和所属组格式chown -R 用户:组 文件路径仅root用户能够修改文件属主。六共享目录实现原理创建独立共享用户组将需要互相访问的用户加入该组修改共享目录的所属组为新建共享组给组开放读写执行权限限制其他用户无任何访问权限实现组内用户文件互通、外部用户无法查看。二、实验实操7道练习题完整步骤练习1创建新用户、设置密码查看/etc/passwd验证用户存在执行交互式创建用户命令sudoadduser test_1输入本机普通用户密码输入密码终端无任何显示属于系统安全机制正常输入回车即可根据提示设置test_1登录密码密码长度必须大于等于8位建议大小写字母数字组合姓名、房间号、电话等信息全部直接回车跳过最后输入Y确认创建。过滤查看passwd文件确认用户创建成功cat/etc/passwd|greptest_1终端输出包含test_1的一行信息代表用户已写入系统用户文件。练习2修改用户备注字段查看修改结果使用chfn命令修改用户备注信息sudochfn test_1根据提示填写全名、房间号、工作电话、家庭电话填写完成回车确认。再次查看passwd核对备注字段变化greptest_1 /etc/passwd该行第五段字段更新为刚刚填写的个人信息。练习3使用groupadd创建新用户组创建共享用户组share_groupsudogroupaddshare_group查看系统全部用户组验证组创建完成tail-5/etc/group输出末尾出现share_group相关记录即创建成功。练习4usermod将用户加入新建组修改组名将test_1用户追加至share_group附加组sudousermod-aGshare_group test_1参数-aG代表追加附加组不会覆盖用户原有所属组。2. 查看用户所属组信息验证idtest_1输出groups字段包含share_group名称。截图6位置截取usermod执行命令与id查询用户组的输出内容。修改用户组名称将share_group重命名为team_groupsudogroupmod-nteam_group share_group再次查看/etc/group确认组名修改生效tail-5/etc/group练习5在新用户家目录创建文件、目录查看默认权限切换root管理员账号su-输入root密码登录。2. 进入test_1用户家目录新建目录与文本文件cd/home/test_1mkdirtest_dirtouchtest_file.txt查看新建文件、目录的默认权限ls-l目录默认权限drwxr-xr-x普通文件默认权限-rw-r–r–由系统umask0022计算得出。退出root用户exit练习6chmod、chown修改目录权限与归属搭建组共享目录创建共享实验目录mkdir-p/home/本机用户名/share_testls-l修改目录所有者为root所属组改为team_groupsudochown-Rroot:team_group /home/本机用户名/share_test设置权限组内拥有读写执行权限其他用户无任何权限sudochmod-Rgrwx,o-rwx /home/本机用户名/share_testls-l目录权限变为drwxrwx—目录绿色标识消失其他用户无法访问同组用户可自由读写文件。切换test_1用户验证共享功能su- test_1cd/home/本机用户名/share_testtouchgroup_test.txtls-ltest_1能够正常在共享目录创建文件代表组共享权限配置完成。练习7删除本次实验创建的测试用户删除test_1用户并同步删除家目录sudouserdel-rtest_1-r参数作用删除用户同时清理/home/test_1整个文件夹。2. 验证用户已彻底删除cat/etc/passwd|greptest_1终端无任何输出代表用户记录已清除。三、常用命令参数汇总一用户操作命令adduser 用户名交互式完整创建用户自动生成家目录、配置文件useradd -m 用户名底层创建用户-m自动创建家目录passwd 用户名修改指定用户密码passwd -e 用户名强制下次登录改密码usermod -c “备注内容” 用户名修改用户备注信息usermod -aG 组名 用户名将用户添加至附加组userdel -r 用户名删除用户删除用户家目录二用户组操作命令groupadd 组名新建用户组groupmod -n 新组名 旧组名修改现有用户组名称三文件权限与归属命令ls -l查看文件类型、权限、所有者、所属组chown -R 用户:组 文件路径递归修改文件所有者与所属组chmod -R grwx,o-rwx 文件路径符号模式设置权限chmod -R 770 文件路径八进制数字模式设置权限四系统账户信息文件/etc/passwd存储所有用户基础信息/etc/shadow存储加密密码、密码有效期仅root可读/etc/group存储系统全部用户组信息四、实验总结Linux依靠UID、GID区分用户与用户组通过passwd、shadow、group三个核心文件管理全部账户相关数据实现系统安全隔离。adduser适合新手快速搭建完整可用用户useradd多用于脚本自动化批量创建用户两者使用场景不同。文件权限分为所有者、同组用户、其他用户三个层级chmod管控访问权限chown管控文件归属递归参数-R可批量修改目录下所有内容。团队共享目录标准实现流程新建专属共享组→将参与共享的用户加入该组→修改目录所属组为共享组→给组开放rwx权限限制外部用户访问。终端输入密码时屏幕不会显示字符、星号是Linux内置安全防护机制正常输入完成回车即可。操作目录、文件权限与归属时-R递归参数使用频率极高会同步修改目录内全部子文件、子目录。