哈特中尉's Blog

不会写代码的司机不是好厨师!

centos7重置root密码

原文地址:http://blog.csdn.net/xztjhs/article/details/42214967a

centos7/rhel7进入单用户方式和重置密码方式发生了较大变化,GRUB由b引导变成了ctrl+x引导。
重置密码主要有rd.break和init两种方法。

rd.break方法:

  • 1、启动的时候,在启动界面,相应启动项,内核名称上按“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,或者输入passwd,交互修改;
    (2)还有就是先cp一份,然后修改/etc/shadow文件
  • 6、touch /.autorelabel 这句是为了selinux生效
  • 7、ctrl+d 退出
  • 8、然后reboot
    至此,密码修改完成

init方法:

    1. 启动系统,并在GRUB2启动屏显时,按下e键进入编辑模式。
    1. 在linux16/Linux/linuxefi所在参数行尾添加以下内容:init=/bin/sh
    1. 按Ctrl+x启动到shell。
    1. 挂载文件系统为可写模式:mount –o remount,rw /
    1. 运行passwd,并按提示修改root密码。
    1. 如何之前系统启用了selinux,必须运行以下命令,否则将无法正常启动系统:touch /.autorelabel
    1. 运行命令exec /sbin/init来正常启动,或者用命令exec /sbin/reboot重启