前言:
最近遇到了一个Centos7利用单用户(rw init=/bin/bash)改密码后还是无法登陆的情况(关于Linux单用户改密码可以参考我之前的文章《记录一次Ubuntu单用户绕过(破解)密码》),经过我不断的百度,最终找到了成功改密的方式。
过程:
1、先启动系统,按“e”进入编辑页。最好点快一点,5s后就进入系统了
2、老规矩找到指定的位置(linux16 核心命令行),在“UTF-8”后面加上“rd.break”,按下Ctrl+X,以单用户模式启动
3、依次输入以下(红色标记)命令,最后我放一张输入完全部命令的图片
switch_root:/# mount -o remount,rw /sysroot
switch_root:/# chroot /sysroot
含义:重新挂载/sysroot成可读可写,并切换到/sysroot
sh-4.2# passwd lilei
New password: 111
Retype new password: 111
含义:修改密码,这里“passwd”后的“lilei”就是我们要修改的用户名,“111”是我改的密码
sh-4.2# touch /.autorelabel
含义:因为在此情況下,SELinux 並沒有启动,对所有文件的更改,可能会造成文档的 context 不正确,为确保开机时重新设定 SELinux context,必須在根目录下添加隐藏文件“.autorelabel”
sh-4.2# exit
switch_root:/# reboot
含义:退出chroot,并重新开机
4、输入完“reboot”重启后会自动再重启一次,等待即可。我们进入系统后,再输入密码就可以正常登陆了。
博主你好,我按照你这个方式重置密码确实可以,但是通过ssh远程连接失败,原来能登陆上的账号也没法登录了,你知道什么原因吗?
你进虚拟机ifconfig看下ip是不是变了
还好没有坑,看了好几个,其他的人都有坑
如果输入 passwd 出现方块乱码 输入 LANG=en 就行了 试了半天
重新进入怎么那么慢嘞???
重启后需要等一会儿系统载入的
CentOS7 cannot touch ‘/.autorelabel’:Permission Denied怎么办?
正解,修改密码成功
可以,就是这几个命令还是不懂
虚拟机没法启动了???丢
为什么我改了之后,就起不来了呢????
找不到rd.break