在 RHEL/Centos7.0 版本之后,Linux 的机制发生了较大变化,在系统引导方面,使用 了 grub2 代替了之前的 grub 引导,init 初始化程序也更换成了 systemd 初始化,随之带来 的 root 密码重置的方法也有所改变 。
操作步骤:
1、重启系统,待 linux 系统启动到 grub2 引导菜单时,找到当前系统引导选项,如果有多 个可用内核,这里就有多个引导选项,按 e 键,如图
2、按 e 键后,出现如图 10.5 所示界面,通过方向键将光标放到 kernel 引导行所在行尾, 然后添加以下内容: init=/bin/sh
3、 添加完成,按键 Ctrl+x 启动 shell 引导,最后进入单用户模式。
4、 挂载根分区为可读写模式,执行如下命令:
mount -o remount,rw /
然后,就可以执行
passwd
命令重置密码了,这里有一点需要注意,如果系统中开启 有 selinux,还需在根分区创建 autorelabel 文件,否则系统无法正常启动,操作命令如下:
touch /.autorelabel
5、密码修改完成后,直接执行 reboot 命令已经无效,此时需要输入全路径命令,操作如下:
exec /sbin/init
或者 exec /sbin/reboot 这样就完成了密码重置,正常登录系统,查看密码是否修改成功。