Ubuntu 中如何启用 root 账户?—— 从 “su: 认证失败” 到成功切换 root 的完整指南

🔐 Ubuntu 中如何启用 root 账户?------ 从 "su: 认证失败" 到成功切换 root 的完整指南

适用场景

  • 刚安装完 Ubuntu,发现无法用 su - 登录 root?
  • 想执行需要最高权限的操作,但不想每次敲 sudo
  • 学习 Linux 系统管理,想理解 user 与 root 的权限关系?

本文带你一步步解决"认证失败",安全地启用并切换至 root 账户!


🚫 问题现象:为什么 su - 会提示"认证失败"?

你在终端输入:

bash 复制代码
su -

然后输入密码(你以为是自己用户的密码),结果得到:

复制代码
su: 认证失败

❓ 原因解析:

Ubuntu 默认禁用 root 账户登录,这是出于安全考虑的设计:

  • root 账户没有预设密码(或密码被锁定)
  • 所有特权操作应通过 sudo 完成
  • 防止误操作或恶意攻击直接获得最高权限

所以,即使你是普通用户,也不能直接用 su - 切换为 root ------ 因为 root 根本"没密码"或"被锁"。


✅ 解决方案:使用 sudo passwd 设置 root 密码

步骤一:打开终端,执行以下命令

bash 复制代码
sudo passwd

系统会提示你:

复制代码
[sudo] lr 的密码:

👉 这里输入的是当前用户 lr 的密码(不是 root 的!)


步骤二:设置新的 root 密码

接着你会看到:

复制代码
新的 密码:
重新输入新的 密码:

⚠️ 注意:

  • 输入时屏幕不会显示任何字符(包括星号),这是正常现象!
  • 请确保两次输入一致
  • 建议使用强密码(大小写+数字+符号,长度≥8)

完成后,系统提示:

复制代码
passwd: 已成功更新密码

✅ 此时,root 账户已被激活,并设置了新密码!


步骤三:验证是否能切换为 root

再次执行:

bash 复制代码
su -

这次输入你刚刚设置的 root 密码,即可成功登录:

复制代码
root@lr:~# 

看到提示符变成 #,说明你现在是超级管理员身份!


🧩 补充知识:su - vs su vs sudo

命令 作用 是否需要密码 切换后环境
su - 切换为 root 并加载其环境变量 需要 root 密码 完整 root 环境(推荐)
su 切换为 root 但不加载环境变量 需要 root 密码 可能缺少 PATH 等变量
sudo <command> 以 root 权限执行单条命令 需要当前用户密码 不切换用户,仅提权

💡 推荐日常使用 sudo,只在必要时才切换为 root 用户。


⚠️ 安全提醒:慎用 root 账户!

虽然我们现在启用了 root,但请务必注意:

  • ❗ 不要在图形界面中以 root 身份运行浏览器、编辑器等应用
  • ❗ 避免长时间停留在 root shell 中
  • ❗ 不要随意删除 / 下的重要目录(如 /bin, /etc, /usr
  • ✅ 日常操作仍建议使用普通用户 + sudo

🛡️ Ubuntu 的设计理念:"最小权限原则" ------ 能不用 root 就不用!


🔄 如何再次禁用 root 账户?(可选)

如果你只是想临时启用 root,之后想恢复默认状态:

bash 复制代码
sudo passwd -l root

这会锁定 root 账户,使其无法再通过 su - 登录。

如需重新启用,再执行:

bash 复制代码
sudo passwd root

🎯 总结:三步搞定 root 登录

  1. 发现问题su - 提示"认证失败" → root 未设密码或被锁
  2. 解决问题sudo passwd → 设置 root 密码
  3. 验证结果 :再次 su - → 输入新密码 → 成功切换!

📝 附赠:常用 root 相关命令速查表

bash 复制代码
# 设置/修改 root 密码
sudo passwd

# 锁定 root 账户(禁用)
sudo passwd -l root

# 解锁 root 账户(启用)
sudo passwd -u root

# 查看 root 账户状态
sudo passwd -S root

# 以 root 身份执行单条命令(无需切换用户)
sudo whoami

# 切换到 root 并保留当前环境变量(不推荐)
su

# 切换到 root 并加载完整环境(推荐)
su -

🆘 常见问题 FAQ

Q1: 我忘了自己设置的 root 密码怎么办?

A: 重启进入 recovery mode → 选择 root shell → 执行 passwd root 重设。

Q2: 为什么我不建议长期使用 root?

A: 容易误删系统文件、破坏权限、增加安全风险。Ubuntu 设计初衷就是让用户通过 sudo 安全提权。

Q3: 我可以把 root 密码设成和当前用户一样吗?

A: 技术上可以,但强烈不建议!不同账户应有不同密码,便于审计和安全隔离。


🎉 结语

现在你已经掌握了 Ubuntu 中最基础也最重要的权限管理技巧之一!无论是调试系统、安装软件还是配置服务,都能灵活应对。

记住一句话:

"能用 sudo 就不用 su,能不用 root 就不用 root。"

祝你玩转 Linux,越用越顺!🚀


相关推荐
PatrickYao04222 小时前
Hydro OJ部署完全指南!
服务器·oj·hydro·在线评测
小政同学2 小时前
【NFS故障】共享的文件无法执行
linux·运维·服务器
不会写DN3 小时前
受保护的海报图片读取方案 - 在不公开静态资源目录下如何获取静态资源
服务器
AI木马人3 小时前
3.【Prompt工程实战】如何设计一个可复用的Prompt系统?(避免每次手写提示词)
linux·服务器·人工智能·深度学习·prompt
挽安学长3 小时前
保姆级教程,通过GACCode使用Claude Code Desktop!
运维·服务器
sunshine8854 小时前
财务RPA的深水区应用:超越自动化,迈向智能决策支持
数据库
efir OONA4 小时前
MySQL数据库误删恢复_mysql 数据 误删
数据库·mysql·adb
firstacui4 小时前
MGRE实验
运维·服务器·网络
zhangchaoxies4 小时前
如何在 Go 中安全复制接口指针所指向的值
jvm·数据库·python
陈陈CHENCHEN5 小时前
【数据库】MySQL 8.0.40 至 8.0.44 RPM 方式升级指南
数据库·mysql