虚拟机忘记密码重置过程
由于太长时间未使用虚拟机导致忘记虚拟机的root用户密码和自定义用户密码,另外说明本人电脑是使用VMware装的CentOS7.从忘记密码到找回花了我半天时间,通过不停的百度和CSDN最终解决了这个问题。所以为了避免以后出现这种情况再到处找,也为了为了方便其他读者出现此种情况时能快速解决所以想写篇博客用来记录。
- 打开VMware开启忘记的虚拟机,然后左键单击使光标置于虚拟机内,然后按下e建进入编辑模式
- 使用上下左右键使光标移动到UTF-8 后面,在这后面加上init=/bin/sh (注意utf-8和init 之间是有空格的)
- 然后按下 Ctrl + x 进入单用户模式
- 输入命令挂载,挂载到根目录
mount -o remount, rw /
- 输入 passwd 用户名 (例如:passwd root)
说明:如果出现上图所示乱码,按下Ctrl+c 退出,再输入LANG=en 回车即可
- 按照提示输入我们的新密码,然后回车。(注意:在输入密码的时候屏幕并不会显示出来)
如果输入的密码太简单,会提示警告(BAD PASSWORD:The password fails the dictionary check it is too simplistic)可以忽略它,继续输入第二遍 - 当看到提示:password: all authentication thokens updated successfully. 此时表明密码修改成功。
- 如果已经开启了SeLinux,则需要输入一下命令:touch /.autorelabel
- 最后输入以下命令重启即可。
exec/sbin/init
注:一般情况下到这一步,基本上密码就重置成功,可以重启系统进行使用了。但是由于我之前的误操作,可能导致一些系统文件被我修改了,所以在我重启的时候,失败了出现以下提示:
failed to load selinux policy freezing
这个时候需要关掉虚拟机,然后开启,按下e重新进入到编辑模式,在utf-8后面加上 selinux=0
然后按下Ctrl+X 虚拟机就会自动重启了,之后使用我们前面修改过的密码登录机可以了
至此,密码重置大功告成,以上内容仅供各位小伙伴参考,有不当之处欢迎大家批评指正!