CentOS 8 单用户模式更改root密码
CentOS 8 单用户模式更改root密码
疫情过去,很明显, 企业用户又带来了一堆麻烦事。老是动数据库,都快成了半个DBA了。加上公务员考试也算是过去了,那么接下来就得备考RHCE了。4月份的时候听说rhce7要结束了,当时就决定直接考rhce8得了,可惜被项目上的事拖了会。现在才查了查rhce8,我的理解是
前面的rhcsa还是和以前的一样,改变的只是ansible自动化考得更多......感觉对我有利啊^_^
当然,听说第一关便是更改root密码,连忙搞了台centos8(以前刚上线的时候弄的)试了试,发现之前写的Centos单用户模式更改root密码在centos8里不生效,好家伙,又来新知识了!
收集了有关资料...其实就是网上百度
方法应该有两种,具体原理还是放进黑匣子吧。
方法一、
1:老规矩,启动前按“e”进入启动配置编辑模式
2:修改启动权限配置
将ro(只读)改为:rw init=/sysroot/bin/bash (很明显,sysroot用户读写权限下的编辑模式)
友情提示:不要使用vi/vim下的快捷键,别问我为什么。。。
3:按“ctrl+x”进入紧急模式
好了,进来了
4:更改密码
运行命令 chroot /sysroot/ 切换回原始系统。
然后输入passwd设置新密码(建议明文修改,保不准万一键入问题被搞死)
修改完成后运行命令 touch /.autorelabel 使SELinux生效,密码生效。
三部曲
chroot /sysroot/
echo 'ad123654' | passwd --stdin root
touch /.autorelabel
5:退出重启。。。(应该是有个直接进入启动页面的)
exit
reboot
6:验证
说实话,看见这种debug,有点慌。再次启动后,就正常进入了
方法二、
。。。好吧,实验了很多,都是失败的,但是貌似可以简化下方法一
1:与方法一“1”一样
2:修改启动权限配置
将ro 改为:rw
在末尾加入:init=/bin/sh
3:ctrl + x 进入紧急模式
4:更改密码
然后输入passwd设置新密码(建议明文修改,保不准万一键入问题被搞死)
修改完成后运行命令 touch /.autorelabel 使SELinux生效,密码生效。
exec /sbin/init 快速启动
三部曲
echo 'ad123456' | passwd --stdin root
touch /.autorelabel
exec /sbin/init
加载也要好一会
5:验证
总结:与CentOS 7 相比,多了一个声明操作“touch /.autorelabel”,其他都还是一样的。当然,Linux 8 和CentOS 8 有可能是不一样的,还需后续验证。