Linux基础及应用教程:用户管理
一、实验目标
- 掌握
su 与 sudo 命令的使用
- 理解 Linux 用户的添加、删除与密码设置
- 了解用户与组的基本概念及权限控制
- 熟悉 sudo 配置文件与权限授权机制
二、实验环境
- 实验平台:VMware 虚拟机
- 操作系统:CentOS 7 / 8
- 登录用户:
njucm
- 普通用户密码:
123456
- root 密码:
123456
三、实验内容与步骤
实验准备
# 确认当前登录用户
whoami
# 切换到普通用户 njucm(若未登录)
su - njucm
# 查看当前用户所在的组
groups
任务1:su 与 sudo
# 使用 su 切换到 root 用户
su -
# 输入 root 密码 123456
# 查看当前身份
whoami
# 使用 sudo 执行单个命令
sudo ls /root
# 若提示无权限,则编辑 sudo 权限文件(需 root)
visudo
# 添加如下行(在 root ALL=(ALL) 下方)
njucm ALL=(ALL) ALL
任务2:创建新用户
# 切换到 root
su -
# 创建新用户 student1
useradd student1
# 创建用户并指定家目录与Shell
useradd -m -s /bin/bash student2
# 查看用户信息
id student1
grep student1 /etc/passwd
任务3:设置与修改密码
# 为 student1 设置密码
passwd student1
# 输入两次密码 123456
# 修改当前用户自己的密码
passwd
# 验证登录
su - student1
whoami
任务4:删除与锁定用户
# 删除用户但保留家目录
userdel student1
# 删除用户及其家目录
userdel -r student2
# 锁定用户账户(禁止登录)
passwd -l njucm
# 解锁账户
passwd -u njucm
任务5:sudo 权限配置与测试
# 编辑 sudo 权限配置
visudo
# 在文件末尾添加:
student1 ALL=(ALL) NOPASSWD: /usr/sbin/useradd, /usr/sbin/userdel
# 保存退出后,切换为 student1 测试
su - student1
# 测试创建用户(无需输入密码)
sudo useradd testuser
sudo userdel testuser
四、实验报告要求
- 记录各命令执行结果截图
- 解释
su 与 sudo 的区别
- 说明用户信息文件
/etc/passwd 与 /etc/shadow 的作用
- 总结 Linux 用户权限体系与管理方法
五、常见问题解答
- Q:输入 sudo 时提示“user is not in the sudoers file”?
A:说明当前用户未配置 sudo 权限。请使用 root 执行 visudo 并添加相应规则。
- Q:执行 useradd 提示命令未找到?
A:请确认已使用 root 身份,或命令路径为 /usr/sbin/useradd。
- Q:为什么修改密码后仍无法登录?
A:检查是否账户被锁定(用 passwd -S 用户名 查看)。