RedHat最近升级了centos linux操作系统,更新为centos7,更新幅度之大,连红帽官方的认证RHCE也进行了升级,认证必须使用rhel7,可见红帽官方对centos7的重视程度。 升级后的centos7的常用操作及快捷键等也有了不小的变动,忘记root密码后恢复密码的方法与centos5、6的操作办法非常不一样,目前网上大多数都是针对centos5、6恢复root的操作办法,本文就针对我们经常遇到的忘记Redhat7或centos7 root密码的问题进行演示。
破解方法归根到底,就是进入单用户模式进行修改密码,可以使用如下两种方法进入单用户模式,以下进行分别讲解。
第一种:(本站推荐) 开机进入启动界面后(出现grub boot loader 开机选项菜单时),要按照屏幕的下方的操作提示迅速按下“e”键(或者立即点击键盘任意鍵,boot loader 会暂停,再按e键),编辑选项菜单
按e 键,进入编辑项菜单,如下图
找到Linux 16的那一行,将ro改为rw init=/sysroot/bin/sh ,如下图所示
按下 Ctrl+x ,使用单用户模式启动
进入到单用户模式后,chroot 工作目录到/sysroot
#chroot /sysroot 修改root密码 #passwd root (或使用echo "12345678" | passwd --stdin root 进行修改也可以)
因为在此情況下,SELinux 並沒有启动,对所有文件的更改,可能会造成文档的context(安全上下文)不正确,为确保开机时重新设定SELinux context,必 須在根目录下添加隐藏文件.autorelabel。 #touch /.autorelabel (如果你系统没有开启selinux,那么可以不做这一步)
退出chroot #exit
退出系統,系統会自动重新开机 #reboot 重启后,使用修改后root密码登入即可。
第二种: 开机进入启动界面后(出现grub boot loader 开机选项菜单时),要按照屏幕的下方的操作提示迅速按下“e”键(或者立即点击键盘任意鍵,boot loader 会暂停,再按e键),编辑选项菜单
按e 键,进入编辑项菜单,这时按键盘上面的方向键“下”,找到Linux 16的那一行,在末尾外即在"LANG=zh_cn.UTF-8"后面加上“init=/bin/sh”,千万要注意一定要加在这个位置,其他网站上面的教程另起一行加上此命令,我试验过是无法进入单用户命令行的。
按下 Ctrl+x ,使用单用户模式启动 www.centos9.com
此时单用户模式挂载为只读,必須重新挂载成可写入,才能修改密碼,步骤如下: 重新挂载/ 成可读可写 #mount -o remount,rw /
修改root密码 #passwd root (或使用echo "12345678" | passwd --stdin root 进行修改也可以)
因为在此情況下,SELinux 並沒有启动,对所有文件的更改,可能会造成文档的context(安全上下文)不正确,为确保开机时重新设定SELinux context,必 須在根目录下添加隐藏文件.autorelabel。 #touch /.autorelabel (如果你系统没有开启selinux,那么可以不做这一步)
重启系统 用这种方式进入到单用户模式的,需要强制的重启,重启后,即可用设置的新密码进入系统了。 (责任编辑:IT) |