CentOS 7~9 救援模式恢复root密码实战指南

在管理Linux服务器时,忘记root密码是一件棘手的事情,但幸运的是,CentOS提供了救援模式来帮助我们重置root密码。本文将以CentOS 7至9为例,详细介绍如何通过GRUB引导菜单进入紧急模式(或称为救援模式),进而恢复root用户的密码

准备工作

  • 确保系统可重启:在进行任何操作之前,请确保可以安全地重启服务器,不会影响到关键业务运行。
  • 备份数据:虽然本操作主要是修改密码,但在处理系统级操作时,良好的习惯是先做好数据备份。

 

步骤详解

我这里以Red Hat Enterprise Linux 9 系统 为例

1. 重启系统

首先,重启服务器,您会看到GRUB引导加载器的界面

CentOS 7~9 救援模式恢复root密码实战指南

 

2. 进入编辑模式

在GRUB界面,选择默认的内核启动项(通常是第一个选项),然后按键盘上的 e 键进入GRUB的编辑模式。

CentOS 7~9 救援模式恢复root密码实战指南

 

3. 修改启动参数

找到 linux16 或 linuxefi 开头的行,或者是quiet结尾的地方(取决于您的CentOS版本和配置)

在该行的末尾添加 rd.break 参数,这会让系统在初始化阶段暂停。

修改完毕后,按 Ctrl+X 键继续启动过程,此时系统将进入紧急模式。

 

4. 重新挂载根文件系统

您会进入一个简化的shell环境,首先需要重新挂载根文件系统为读写模式,执行以下命令:

  1. mount -o remount,rw /sysroot

5.切换到系统的真实根目录环境

  1. chroot /sysroot

6. 重置root密码

接下来,使用 passwd 命令来重置root用户的密码,或者使用明文方式修改密码均可

  1. passwd root
  2. echo "your password" | passwd --stdin root # 明文方式

7. 更新SELinux上下文

对于启用了SELinux的系统,为了防止文件权限问题,需要创建一个.autorelabel 文件,以便下次启动时自动重新标记文件系统的SELinux上下文:touch /.autorelabel

7. 退出并重启

完成上述步骤后,依次执行以下命令退出紧急模式并重启系统(最好使用sync命令同步一下,确保所有未缓冲的文件系统数据都被写入磁盘,推荐但是非必须):

“`bash

sync
exit
exit

“`

CentOS 7~9 救援模式恢复root密码实战指南

 

然后输入两次exit退出重启,并观察是否触发selinux-autorelabel

CentOS 7~9 救援模式恢复root密码实战指南

重启之后就可以用新的密码登录系统了~

本文来自投稿,不代表极客运维立场,如若转载,请注明出处:https://www.geeklinux.cn/jsjc/linux/107.html

(0)
geeklinux.cn的头像geeklinux.cn
上一篇 2024 年 6 月 9 日 下午9:02
下一篇 2024 年 6 月 24 日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

评论列表(1条)