一个计算机技术爱好者与学习者

0%

CentOS7重置root密码

1. 问题描述

安装了CentOS7系统的主机丢失了root密码。
如果配置了root用户ssh公钥登录,其实平时使用是没有什么影响的。
而且,还可以通过passwd修改root密码,这样就找回了root密码。

但是,如果丢失root密码后,主机刚好启动失败,这时候就必须得通过外接设备(KVM/显示器键盘)或者VNC进行root密码重置了。否则无法登录查看系统启动日志,进行错误排查和修复。

1
2
3
welcome to emergency mode! after logging in , type "journalctl -xb: to view system logs , "systemctl reboot" to reboot , "systemctl default" to try again to boot into default mode .
give root password for maintenance
(or type Control-D to continue):

2. root密码重置方法

1、重启

2、选择启动项
↑↓键,选择开机启动项,默认选中第一个即可

3、编辑启动项
按下e,回车
找到ro,修改成rw init=/sysroot/bin/sh

4、进入紧急模式
按下ctrl+x,进入紧急模式

5、在紧急模式修改密码

1
2
3
4
5
chroot /sysroot
passwd
touch /.autorelabel
exit
reboot

以上,root密码重置完成。

参考文档:

3. 启动失败修复

1
journalctl -xb

查看系统启动日志,找到具体的启动失败的原因。

断电后的启动失败,极大概率是因为挂载问题。
例如,如果提示时因为 /data 目录的挂载问题,那么就在 /etc/fstab 中注释掉 /data 目录的挂载。
然后重启主机即可 reboot