linux系统root密码忘记怎么办

操作系统: centos7

设备型号:ThinkPad E15

实验环境:开启一台Centos7系统

首先重启服务器,在启动时,进入如下界面,选择第一项,按下e键进行编辑

linux系统root密码忘记怎么办

#进入编辑模式后会看到这些信息。找到“Linux16”开头的行,在Linux16的行尾空格后添加“rd.break”

linux系统root密码忘记怎么办 第2张

改完之后,按下Ctrl+X进入紧急模式

原理:打断系统正常启动,然后进一个bash环境,系统并没有真正的启动

linux系统root密码忘记怎么办 第3张

emergency   [i?m?:d??nsi]  紧急

查看系统根挂载情况:

linux系统root密码忘记怎么办 第4张

发现是只读的。需要重新以rw方式挂载/sysroot 。

mount -o remount,rw /sysroot      #重新挂载,使其拥有读写权限

linux系统root密码忘记怎么办 第5张

使用chroot命令换根,修改密码

chroot命令可以切换文件系统的根。

执行: chroot /sysroot/ 

linux系统root密码忘记怎么办 第6张

输入:LANG=en  #修改语言环境为英文,如果是中文会显示乱码

执行passwd 开始修改密码

linux系统root密码忘记怎么办 第7张

执行命令: touch  /.autorelabel  ,创建/.autorelabel新文件。

这步操作的作用是:告诉selinux在系统重启时自动重新标记文件系统的selinux策略。

linux系统root密码忘记怎么办 第8张

总结:

1. 在系统启动引导界面后按e进行编辑

2. 找到“Linux16”开头的行,在行尾输入空格后添加“rd.break”

3. 按下Ctrl+X进入紧急模式

4. 重新挂载文件系统拥有读写权限

5. chroot修改根目录为/sysroot/

6. 通过passwd root命令修改root用户密码

7. 创建文件touch /.autorelabel

8. reboot重启系统