Linux—root密码丢失重置

【CentOS_6.x】单用户模式重置root密码
1.重启 CentOS 6.X,在系统引导倒计时的时候快速按键盘上的[ ↑ ][ ↓ ]键,使其停留在GRUB菜单界面,并按照下方提示按e键。
Linux—root密码丢失重置
2.按下e键,出现如下界面,光标停留在kernel开头那一项,再次按e键。
Linux—root密码丢失重置
3.当再次按e键后,出现如下界面,并在quiet结尾的那行添加一个1或者single并回车,然后按b键系统会重新引导并直接进入单用户模式。
Linux—root密码丢失重置
4.如下图进入单用户模式后,使用passwd root命令修改root密码后,使用reboot命令重启系统,在登录界面输入账户名和刚刚修改root密码即可。
Linux—root密码丢失重置
【CentOS_7.X】使用 rd.break 或init 更改root用户密码。
注意:CentOS7/rhel7进入单用户方式和重置密码方式相对于CentOS6.X发生了较大变化,GRUB由b引导变成了ctrl+x引导,因此在修改密码的时候要谨慎些。
A.【rd.break方式更改root密码!】
1.重启 CentOS 7.X,在系统引导倒计时的时候快速按键盘上的[ ↑ ][ ↓ ]键,使其停留在GRUB菜单界面,并按照下方提示按e键。
Linux—root密码丢失重置
2.当按e后出现如下界面,找到linux16开头的那行,在行末输入rd.break,按ctrl+x进入命令行模式;
Linux—root密码丢失重置
3.进入命令行模式后,使用mount命令,发现根变成了/sysroot/而且只有只读权限,如下图:
Linux—root密码丢失重置
4.要编辑就得有写入的权限,因此我们需要赋予/sysroot/有写的权限才能编辑,使用mount -o remount, rw /sysroot/命令重新挂载,如下图:
Linux—root密码丢失重置
5.有了写权限后,我使用chroot /sysroot/切换到根,并使用passwd更改root密码,如下图:
Linux—root密码丢失重置
6.更改root密码完成后touch /.autorelabel这句是为了selinux生效,exit退出chroot后reboot重启系统即可,如下图:
Linux—root密码丢失重置
B.【init方式修改root密码!】
1. 重启CentOS7.X系统,并在GRUB2启动界面时,光标停留在第一行按e键进入编辑模式。
Linux—root密码丢失重置
2. 当按e后出现如下界面,找到linux16开头的那行,在行末输入init=/bin/sh,并按ctrl+x进入命令行模式;
Linux—root密码丢失重置
3.重新挂载根/使其有写权限,mount -o remount,rw /如下图:
挂载前:
Linux—root密码丢失重置
挂载后:
Linux—root密码丢失重置
4.此时我们有了写权限,可以使用passwd更改root密码,如下图:
Linux—root密码丢失重置
5密码更改完成后,如果之前系统启用了selinux,必须运行touch /.autorelabel 命令,否则将无法正常启动系统;使用命令exec /sbin/init或者exec/sbin/reboot重启即可。
【Ubuntu_重置root密码】
1.重启Ubuntu,将光标放在如下图的选项上:
Linux—root密码丢失重置
2.按e,在linux开头的那一行行的末尾添加init=/bin/bash,如下图:
Linux—root密码丢失重置
3.添加init=/bin/bash完成后,Ctrl+x进入Ubuntu的单用户模式,mount -o remount,rw / 重新挂载根目录,使其有读写的权限后使用passwd命令修改root密码,最后exec /sbin/reboot重启系统。