Ubuntu 20.04 重置密码教程

阅前提醒:数据无价,时间无价!切勿为了一时而填写了奇奇怪怪的密码。密码不规范,视觉两行泪。

作者某日发现自己遗忘了实验室某台 MiniPC 的密码,瞬间红温。但是如何解决呢?

重装固然是一个最简单的思路,但不仅需要系统盘,还会丢失宝贵的数据。

暴力破解?看起来不太现实,反而有可能在试错中迷失。

置之不理?这显然万万不可,在视觉组的开发中,几乎不可能用不到sudo命令。

在查阅了一些资料后,作者总结出了这篇文章。


总结网络上的教程,它们的思路都是一致的:获取到 root(根用户)权限,并更改用户组的密码。

其方法一般有两种,即恢复模式(Recovery mode)和命令行模式(Command-Line)。

零、重置前准备

在实践之前,作者需要读者有一台预装 Ubuntu 20.04 并能够正常开机的电脑。

当然,最好有 Ubuntu 启动盘。同时无需网络。

在讲解之前,我们需要了解一下电脑启动的各个阶段。

按顺序分别为 BIOS 阶段、Boot Manager(通常为 UEFI 引导,一般会被直接跳过)、系统自带引导菜单(Win 环境一般只有单硬盘存在多系统时才会出现)。

而我们需要进入的 Grub Menu 即为 Ubuntu 系统自带的引导菜单,即第三阶段。

恢复模式和命令行模式两种方法都需要本机能够正常进入引导菜单,也就是此页面。

(图片)

不过在某些情况下可能无法进入菜单,包括但不限于:

BIOS 开启了快速启动(Fast Boot);引导菜单被隐藏或显示时间为零。

1.关闭 BIOS 快速启动

这一步非常简单,只需要在 BIOS 阶段,即电脑品牌标识出现的一小段时间内,按下键盘对应的键位即可进入 BIOS 菜单(一般为 F2、F10、F12或其他组合键,不同品牌的键位也不一样)。

接下来找到快速启动(Fast Boot)并关闭即可。

2.调整 Grub 显示时间

这里有两种方法。第一种适用于无启动盘,无法获得临时超级用户权限的读者;第二种则是通用的修改方法。

① 临时启动

如果仅仅想要临时打开 Grub ,可以在 BIOS 阶段按下 ESC或长按Shift

作者测试时,仅需要短按一次ESC即可正常进入,按两次会导致 Grub Menu 一闪而过,最后进入 Grub 命令行。

② 修改 Grub 文件

1
2
3
4
5
6
7
# /etc/default/grub 文件控制了系统自带引导菜单的显示方式和时间。
GRUB_DEFAULT=0
# 光标默认指向的启动项,第一个为 0,"1> 2"代表点击第二个后的第三个选项
GRUB_TIMEOUT_STYLE=hidden
# Grub Menu 启动样式:hidden(不显示), menu(等待下一步操作), countdown(倒计时结束后进入默认选项)
GRUB_TIMEOUT=10
# Grub Menu 显示时间,单位:秒。-1 为无限秒。

修改GRUB_TIMEOUT_STYLE的参数为menucountdown,后者需要GRUB_TIMEOUT不为 0。

保存之后执行sudo update-grub更新配置文件,即可在下次开机自动弹出 Grub 菜单。

一、恢复模式(Recovery mode)

通过第零步重启电脑,进入到 Grub Menu 后,选择 Ubuntu 的高级选项(Advanced options for Ubuntu),选择一个后面带 recovery mode 的内核,按Enter进入。此时你应该能看到这样的画面。

(图片)

选择 root,会提示输入密码。默认为空,按Enter即可。

保险起见,可以先输入ls /home显示系统已有的用户。

接下来输入passwd 要更改的用户名,再输入两次新密码即可。

1
2
3
4
5
6
7
8
9
10
Give root password for maintenance	# 输入 root 用户的密码,默认为空
(or press Control-D to continue):
root@root:~$ ls /home # 列出系统已有的用户
XXXX
root@root:~$ passwd 要更改的用户名 # 更改某用户的密码
New password:
Retype password:
passwd: password updated
successfully
root@root:~$ reboot # 重启

二、命令行模式

前几步与进入恢复模式操作一样,但最后需要按e开始编辑 Grub。此时你应该能看到这样的画面。

(图片)

寻找以linux /boot/vmlinuz为开头的行,将ro Quiet Splash $vt_handoff一词替换为rw init=/bin/bash

接下来按 F10 保存,此时系统会重启,等待 root 命令行出现,正常修改密码即可。

三、引用文章

如何在 Ubuntu 20.04 中重置忘记的 Root 密码

Ubuntu20.04 忘记root和普通用户密码的恢复步骤

如何在 2 分钟内重置忘记的 Ubuntu 密码

【Ubuntu】在ubuntu上使用恢复模式及Recovery Mode各选项的使用方法_ubuntu recovery mode-CSDN博客


Ubuntu 20.04 重置密码教程
https://kekkj123.github.io/posts/Ubuntu_Reset_Passwd/
作者
KEKKJ
发布于
2024年12月19日
更新于
2024年12月23日
许可协议