Centos7忘记密码

📜21.1 重置root密码 📑CentOS 7的处理方法 🔖1.重启主机或者启动系统 重启主机,进入内核选择界面的时候,按任意键停止倒数(除ENTER,我一般习惯按上下按键),之后按e

img

🔖2.合适位置输入rd.break 在linux16开头的行的结尾输入rd.break

在这里插入图片描述

🔖3.ctrl+x进入紧急模式 修改完后按ctrl+x进入紧急模式:

img

🔖4.重新挂载根 现在的根为只读状态,需要挂载为读写状态以便进行修改

mount -o remount,rw /sysroot

img

🔖5.切换根 使用chroot命令用来将指定的路径换为根目录进入到sh-4.2,即为你真正的系统

chroot命令用来将指定的路径换为根目录
chroot /sysroot
如果你装了中文系统,建议输入以下命令切换为英文语言环境
LANG=en_US.UTF-8

在这里插入图片描述

🔖6.修改密码 需要输入两次密码进行确认

结尾看到successfully即为修改成功

修改密码
passwd root
也可以用明文的形式进行修改
echo "password" | passwd --stdin root

在这里插入图片描述

🔖7.重打标签并退出重启 如果系统的 selinux 开启着,则需要执行命令: touch /.autorelabel 以更新系统信息

否则重启之后密码修改不会生效, 先退出当前根, reboot 重启系统

touch /.autorelabel
Ctrl+d/exit
Ctrl+d/exit

img

注意:开启 selinux 的情况下需要创建此文件, 因为在 rd.break 环境下 SELinux 是不生效的。在不生效的情况下我们修改了用户的密码,也就是修改了/etc/shadow 文件,所以密码文件的安全上下文的特性会被取消。如果没有让系统在启动时自动恢复 SELinux 的安全上下文,系统会报错“无法登录”,所以 SELinux 在 Enforcing 模式下的时候(如在 disabled 模式下则不用),在根目录下touch 隐藏文件 autorelabel 会让系统在重启时以 SELinux 默认类型重新写入 SELinux 安全上下文。

在8的系统一样的机制,因此,在不明确的情况,都执行一下touch /.autorelabel最为稳妥。

📑CentOS 8的处理方法 🔖1.重启主机或者启动系统 重启主机,进入内核选择界面的时候,按任意键停止倒数(除ENTER,我一般习惯按上下按键),之后按e

在这里插入图片描述

🔖2.合适位置输入rd.break 找到linux那行从末尾一直删除到ro (也可不删除)

将 ro 改成 rw 再输入 rd.break

下图示例是在linux开头的那一行结尾加上rd. break,并修改读写模式引导系统(默认是ro只读)来玩。

img

🔖3.ctrl+x进入紧急模式 修改完后按ctrl+x进入紧急模式:

在这里插入图片描述

🔖4.重新挂载根 首先,可以mount查看系统根挂载情况:

在这里插入图片描述

如果是只读,则需要重新挂载(所以第2步修改rw就是为此而准备的)

mount -o remount,rw /sysroot

在这里插入图片描述

🔖5.切换根 使用chroot命令用来将指定的路径换为根目录进入到sh-4.2,即为你真正的系统

chroot命令用来将指定的路径换为根目录
chroot /sysroot
如果你装了中文系统,建议输入以下命令切换为英文语言环境
LANG=en_US.UTF-8

img

🔖6.修改密码 从这里开始,操作和 7 的系统一样了。

需要输入两次密码进行确认,结尾看到successfully即为修改成功

修改密码
passwd root
也可以用明文的形式进行修改
echo "password" | passwd --stdin root

在这里插入图片描述

🔖7.重打标签并退出重启 如果系统的 selinux 开启着,则需要执行命令: touch /.autorelabel 以更新系统信息

否则重启之后密码修改不会生效, 先退出当前根, reboot 重启系统

touch /.autorelabel
Ctrl+d/exit
Ctrl+d/exit

在这里插入图片描述

打标签注意说明和 7 一致。可参考 7 的说明。

📜21.2 选择错误启动目标导致系统无法正常运行

有小伙伴手多设置了如下配置,那当你的机器一旦重启,就会发现进不到系统,一直循环重启。
systemctl set-default reboot.target

📑处理方法 重复上述操作到 chroot /sysroot的步骤:

img

将启动模式改回来,就OK了。执行如下操作:

systemctl set-default mulit-user.target
Ctrl+d
Ctrl+d
#恢复成默认命令行启动

 

posted @ 2023-03-15 17:06  加鸡腿  阅读(737)  评论(0)    收藏  举报