首先查看系统是什么版本 cat /etc/redhat-release
第1步:然后重启Linux系统并出现引导界面时,按下键盘上的e键进入内核编辑界面.
第2步:在Linux16 参数这行的最后面追加"rd.break"参数,然后按下Ctrl+X组合键来运行修改过的内核程序.如下图:
第3步: 经过30秒后,进入到系统的紧急救援模式,如下图:
第4步:依次输入以下命令,等待系统重启操作完毕,然后可以用心密码linuxprobe来登录Linux系统了,命令执行效果如下图:
mount -o remount,rw /sysroot
chroot /sysroot
passwd
touch / .autolabel
exit
reboot
重置Linux系统的root管理员密码
总结:
1.启动grub界面按"e"
2.进入后,找到linux16开头的地方,按"end"键到最后,输入rd.break,按ctrl+x进入,
3.进入后输入命令mount,发现根为/sysroot/,并不能写,只有ro=readonly权限.
4.mount -o remount,rw /sysroot/ ,重新挂载,之后mount,发现有了r,w权限
5.chroot /sysroot/,改变根;
(1) echo redhat |passwd --stdin root 更改root密码为redhat,交互输入
(2) 还有就是先cp一份,然后修改/etc/shadow文件.
6.touch /.autolabel 这句是为了selinux生效
7.ctrl+d退出
8.然后reboot, 密码修改完成.
方式二: 使用init方法来进入单用户更改root密码
1.启动系统,,在进入grub启动屏幕时,按下e键进入编辑模式;
2.在linux 16/linux/linuxefi所在参数行尾添加以下内容: init=/bin/sh
3.按下ctrl+x启动到shell
4.进入到bash4.2# 界面后, 输入命令. mount -o remount,rw /
5.运行passwd,并按提示修改root密码.
6.如果启用了selinux, 必须运行以下命令,否则无法正常启动系统: touch /.autorelabel
7.运行命令exec /sbin/init 来正常启动,或者用命令exec /sbin/reboot 重启,密码修改完成
CentOS6.x的 与以上操作类似,后续补充.