方法一:rd.break
第1步 重启系统,在下图所示界面按e键
第2步:找到 linux这行,末尾输入 空格 rd.break
然后按 ctrl+x
第3步: 查看可选步骤
输入:mount | grep sysroot
这里sysroot是以ro只读的形式挂载的,所以要以可读可写的方式来挂载
第4步:以读写方式挂载 /sysroot
输入:mount -o remount,rw / sysroot
修改完成后再次输入 mount | grep sysroot 查看,发现 r o已经改为 r w
第5步:修改密码
输入:chroot /sysroot/
再次输入修改密码的命令:echo “123456” | passwd --stdin root
(此处是将root用户的密码重置为“123456”)
显示 successfully 则表示修改已成功
6.强制重置文件系统的上下文
输入:touch /.autorelabel(注意空格)
7.退出exit ,再执行exit,重置文件系统上下文,会有个百分比。
当加载完毕后,即所有操作已完成,只需验证登陆即可。
方法二:init 方法
1.启动系统,并在GRUB2启动屏显时,按下e键进入编辑模式。(和第一种方法相同)
2.在linux所在参数行尾添加以下内容:
(1)找到ro将ro 修改为 rw
(2)末尾添加 init = /bin/sh
2.按Ctrl+x启动到shell
3.运行passwd,并按提示修改root密码。
(或者使用如下命令修改密码:echo "新密码" | passwd --stdin root )
在提示下输入new密码(这里输入的密码是看不见的)
还需要在输入一次确认密码(两次输入密码我们都是看不见的)
成功后会提示successfully
4.若之前系统启用了selinux,必须运行命令:touch /.autorelabel,否则将无法正常启动系统。
5.运行命令:exec /sbin/init 来正常启动,或者使用命令:exec /sbin/reboot 重启
此时第二种修改root用户密码的方法也完成了。
来源地址:https://blog.csdn.net/m0_66185683/article/details/129617599