帮助中心 >
  关于网络安全 >
  Ubuntu密码不记得了可以这样重置root密码
Ubuntu密码不记得了可以这样重置root密码
时间 : 2026-01-20 12:09:29
编辑 : Jtti

面对Ubuntu的登录界面,输入密码后却只得到错误的提示,而你又完全想不起正确的密码是什么。无论是自己很久没用这台机器,还是接手了他人的旧设备,忘记密码都是一个常见又棘手的问题。幸运的是,在Ubuntu系统上,即使忘记了所有用户(包括root)的密码,只要你能物理接触到这台机器或者拥有服务器的控制台访问权限,就有办法重置密码。这个过程不依赖于记忆,而是依赖于对Linux启动流程的干预。

你需要重启目标Ubuntu系统。在开机初期,当看到GRUB引导菜单时(通常会显示Ubuntulogo和几个选项),需要快速按下`Esc`键或者`Shift`键(对于某些UEFI系统可能是长按`Shift`),以进入菜单选择界面。如果错过了这个短暂的窗口,系统会直接启动,你需要再次重启尝试。在GRUB菜单中,你会看到“Ubuntu”这个默认启动项,以及其他高级选项。

用方向键选中“Ubuntu”这一行(通常是高亮的第一项),但不要急着按回车。这时,按下`e`键来编辑这一行的启动参数。你会进入一个文本编辑界面,里面包含了内核启动的配置信息。你需要找到以`linux`开头的一行,这行末尾通常跟着`ro quiet splash $vt_handoff`之类的参数。关键是将参数中的`ro`(只读)修改为`rw init=/bin/``rw`表示以读写方式挂载根文件系统,而`init=/bin/`则告诉内核,启动后不运行默认的初始化系统,而是直接启动一个 shell。这样你就绕过了正常的登录认证流程。

找到正确的那一行并修改后,按下`Ctrl + X``F10`来使用这些编辑后的参数启动系统。几秒钟后,你会进入一个以`root`身份运行的 shell,并且其当前工作目录就是根文件系统的根目录。请注意,此时你拥有的权限是最高的,但整个系统服务(包括网络)都还没有启动,环境也非常基础。现在,你可以直接操作系统的核心文件了。

第一步是重新挂载根文件系统为可读写状态。虽然启动参数中指定了`rw`,但为了确保万无一失,最好显式执行一次。这是因为某些情况下,文件系统可能仍被挂载为只读。

mount -o remount,rw /

接下来,使用`passwd`命令来修改密码。如果你想重置`root`用户的密码(许多Ubuntu桌面版默认禁用root,但你可以为其设置密码),直接运行`passwd`即可。系统会提示你输入新的密码并进行确认。输入时屏幕上不会有任何显示(星号也没有),这是正常的安全行为。

passwd

更常见的情况是,你需要修改一个普通用户的密码,比如你自己的账户用户名是`alex`。那么,你需要指定用户名。

passwd alex

同样地,按照提示输入两遍新密码。如果提示“password updated successfully”或类似信息,就表示密码修改成功。在极少数情况下,如果系统使用了LDAP等外部认证,上述方法可能不适用,但对于标准的本地用户账户,这是有效的。

重要警告:在继续下一步之前,有一个关键操作必须完成。由于我们是以非正常方式启动的,系统在重启时可能会尝试进行文件系统检查(fsck)。为了避免可能出现的文件系统错误,我们需要执行一个同步操作,并确保文件系统状态是干净的。

sync

完成密码重置和同步后,你需要重启系统。直接在这个shell中输入`reboot -f`命令。`-f`参数表示强制重启。

reboot -f

系统将正常重启。当再次到达登录界面时,你就可以使用刚刚设置的新密码登录了。

上面描述的是在传统BIOSGRUB引导下的标准方法。如果你的系统使用了UEFI安全启动,过程可能稍有不同。你可能需要在GRUB菜单出现时,选择“Ubuntu 高级选项”,然后在一个恢复模式(recovery mode)的内核上按`e`进行编辑。原理是相同的:修改启动参数来获得一个root shell

对于云服务器或虚拟机,如果你无法访问GRUB菜单(比如通过VNC或云服务商提供的控制台),则可能需要借助救援模式(Rescue Mode)或恢复镜像。大多数云平台都提供这个功能。你需要从控制台挂载一个临时的救援系统来启动,然后将原系统的根分区挂载到救援环境中,再使用`chroot`命令切换根目录到原系统,最后在原系统的环境中执行`passwd`命令。

# 在救援环境中操作示例(具体分区设备名需根据实际情况调整)

mkdir /mnt/rescue

mount /dev/sda1 /mnt/rescue  # 假设原系统根分区是/dev/sda1

chroot /mnt/rescue

passwd username

exit

reboot

重置密码本质上是通过中断正常的启动流程来获得最高权限。这同时也提醒我们,物理访问权限在Linux安全中至关重要。只要他人能接触到你的机器并执行上述操作,他就能重置密码并访问所有数据。因此,对于存放敏感数据的机器,需要考虑全盘加密(如LUKS),这样即使重置了密码,在没有加密密钥的情况下也无法访问数据。

整个过程并不复杂,但需要谨慎操作,尤其是在修改启动参数时不要变动其他部分。成功后,建议立即登录并检查系统状态是否正常。最好也借此机会,将新密码妥善记录在安全的密码管理器中,避免再次陷入相同的困境。

售前客服
JTTI-Selina
JTTI-Defl
JTTI-Jean
JTTI-Coco
JTTI-Eom
JTTI-Amano
JTTI-Ellis
技术支持
JTTI-Noc
标题
电子邮件地址
类型
销售问题
销售问题
系统问题
售后问题
投诉与建议
市场合作
信息
验证码
提交