【Linux】当遇到不是root用户,无法进入root用户,却仍需要使用sudo命令时
文章目录
- 背景
- 步骤1:重启系统
- 步骤2:进入 GRUB 菜单
- 步骤3:进入恢复模式
- 步骤4:执行恢复命令
- 步骤:5:为普通用户配置sudo权限
背景
问题:
- 无法切换至root用户,一直显示密码输入错误
- 需要为普通用户添加sudo权限
分析:
- 完全进行了“权限死锁”状态
注意:
- 本文讲解的核心就是如何解决“权限死锁”问题。
- 有很多种解决方案,作者仅提及一种,这个是作者在遇到诸如类似的问题,百用百灵的方法——通过GRUB恢复模式。
步骤1:重启系统
- 直接关闭虚拟机,再次重启
步骤2:进入 GRUB 菜单
- 在启动时看到BIOS画面后,立即按住
ESC键(如果不行,尝试Shift键) - 直到出现GRUB启动菜单(如图所示)
- 使用
方向键选择Ubuntu 高级选项

步骤3:进入恢复模式
-
选择 (恢复模式) 后(中间还有次选择,作者未截图演示),进入如图所示的界面

-
选择
root Drop to root shell propmt,按Enter进入,成功进入恢复模式。

当前就是root用户
步骤4:执行恢复命令
- root shell中依次执行以下命令
# 1. 重新挂载文件系统为可写(重要!)
mount -o remount,rw /# 2. 设置 root 密码
passwd root
# 输入想要设置的新密码(输入时不会显示,然后再次确认)# 3. 重启系统
reboot

步骤:5:为普通用户配置sudo权限
- 上述重启虚拟机,
Ctrl + Alt + T打开终端,执行下述命令
# 1. 进入 root 用户
su - root
# 输入新设置的密码# 2. 切换至root用户
# 进入文件
visudo# 3. 在文件末尾添加
普通用户名 ALL=(ALL:ALL) ALL# 4. 切换至普通用户
su - 普通用户名
# 输入密码# 5.验证sudo权限是否配置成功
sudo visudo
# 如果成功进入文件,说明配置成功
