1、重启系统并进入GRUB菜单:重启计算机,当系统启动时,快速按下键盘上的上下方向键↑和↓,使引导程序暂停,选择要编辑的内核版本,然后按“e”键进入编辑模式。
2、编辑启动参数:找到以“linux16”或“linuxEFI”开头的那一行命令,在这一行最后追加“rd.break”参数。
linux16 /vmlinuz3.10.0229.el7.x86_64 root=/dev/mapper/centosroot ro rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosswap:centos/root rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:rootrhGBvga=0x340 lang=enforcing=0 eni
然后在该行末尾追加空格和“rw init=/bin/bash”,最终结果如下:
linux16 /vmlinuz3.10.0229.el7.x86_64 root=/dev/mapper/centosroot ro rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm.lv=centos/root:/dev/mapper/centosroot:swap rhgb quiet LANG=zh_CN.UTF8 vga=0x340 rd.br rd.lvm16=centos//dev/mapper/centosroot rw init=/bin/bash
3、挂载文件系统为读写模式:输入以下命令将根文件系统重新挂载为读写模式:
mount o remount,rw /sysroot
4、切换系统的根信息:通过chroot
命令切换到新的系统根目录:
chroot /sysroot
5、修改密码:在新的系统根目录下,使用passwd
命令来修改用户的密码:
passwd root
注意:由于安全原因,输入的新密码不会显示在屏幕上,你需要输入两次新密码进行确认。
6、退出chroot环境:完成上述操作后,退出chroot环境:
exit
7、更新SELinux信息:如果系统启用了SELinux,需要更新SELinux信息:
touch /.autorelabel
8、重新启动系统:重新启动系统以使更改生效:
exec /sbin/init
步骤 | 描述 |
步骤1 | 重启系统并在GRUB菜单中选择编辑模式。 |
步骤2 | 在内核行添加rd.break 参数并追加rw init=/bin/bash 。 |
步骤3 | 挂载根文件系统为读写模式。 |
步骤4 | 使用chroot 命令切换到新的系统根目录。 |
步骤5 | 使用passwd 命令修改用户密码。 |
步骤6 | 退出chroot环境。 |
步骤7 | 如果启用了SELinux,更新SELinux信息。 |
步骤8 | 重新启动系统使更改生效。 |
Faqs
Q1: 如果忘记当前系统的root密码,如何重置?
A1: 你可以通过重启系统并进入单用户模式或者紧急救援模式(如上文所述),然后使用passwd
命令来重置root密码。
Q2: 如果系统没有启用SELinux,还需要执行touch /.autorelabel
吗?
A2: 如果系统没有启用SELinux,则不需要执行这一步,这一步主要是为了确保SELinux信息在重启后能够正确更新。