在 5 分钟内重置丢失的 root 密码

以下是如何在 Fedora、CentOS 和类似的 Linux 发行版上快速轻松地重置 root 密码的方法。
377 位读者喜欢这篇文章。
Lock

JanBaby,通过 Pixabay CC0。

系统管理员可以轻松重置忘记密码的用户的密码。但是,如果系统管理员忘记了 root 密码或离开了公司会发生什么?本指南将向您展示如何在 5 分钟内重置 Red Hat 兼容系统(包括 Fedora 和 CentOS)上丢失或忘记的 root 密码。

请注意,如果整个系统硬盘已使用 LUKS 加密,则需要在提示时提供 LUKS 密码。此外,此过程适用于运行 systemd 的系统,systemd 自 Fedora 15、CentOS 7.14.04 和 Red Hat Enterprise Linux 7.0 以来一直是默认的 init 系统。

首先,您需要中断启动过程,因此您需要打开系统电源或重新启动系统(如果系统已开机)。第一步比较棘手,因为 GRUB 菜单往往在屏幕上闪烁得非常快。您可能需要尝试几次才能成功。

当您看到此屏幕时,请按键盘上的 e

Grub menu

如果操作正确,您应该会看到类似于此屏幕的画面

Grub screen 1

使用箭头键移动到 Linux16 行

Grub screen 2

使用 del 键或 退格键,删除 rhgb quiet 并替换为以下内容

rd.break enforcing=0

Grub screen 3

设置 enforcing=0 将使您能够避免执行完整的系统 SELinux 重新标记。系统重启后,您只需为 /etc/shadow 文件恢复正确的 SELinux 上下文。我也会向您展示如何操作。

Ctrl-x 启动。

系统现在将处于紧急模式。

以读写访问权限重新挂载硬盘驱动器

# mount –o remount,rw /sysroot

运行 chroot 以访问系统

# chroot /sysroot

现在您可以更改 root 密码

# passwd

在提示时输入两次新 root 密码。如果成功,您应该看到一条消息,内容为“all authentication tokens updated successfully”。

输入 exit 两次以重新启动系统。

以 root 用户身份登录,并将 SELinux 标签恢复到 /etc/shadow 文件。

# restorecon -v /etc/shadow

将 SELinux 恢复为强制模式

# setenforce 1

 

User profile image.
Curt Warfield 是北卡罗来纳州罗利市的高级技术支持工程师。

4 条评论

非常感谢您!....我在家有一台 CEntOS 7 服务器,大约一个月前我忘记了 root 密码!.....现在我知道最好不要把密码设置成连我自己都记不住的东西了!...哈哈!勇往直前!...

不客气,Edward。我很高兴能够帮到您

我每年为慈善机构、邻居、朋友以及想要切换到微软真正运行的系统的陌生人构建数十台设备!事实上,因为 Windows 在这方面毫无用处,所以 Ubuntu 才是云!

Curt,这非常有用,尽管我们已经知道了。但是,感谢您发布它!

作为自 2002 年以来每月在佛罗里达州冬季公园举办的免费 Linux Fest 的赞助商,该活动在每个月第一个星期六上午 9 点至下午 5 点在 Lakemont Avenue 的冬季公园基督教教堂举行,这将是一份讲义。

谢谢您,Patrick。如果它能帮助哪怕一个人,一切都值得了

回复 作者 Patrick Berry (未验证)

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 获得许可。
© . All rights reserved.