admin 管理员组

文章数量: 887021

目录

一、忘记root密码怎么办

1、可以进入救援(rescue)模式直接修改重置root密码

2、什么是救援模式?

二、救援模式重置root密码 

1、使用rd.break(救援模式的一种内核参数)

2、使用shell

三、修改GRUB配置

1、编辑/etc/default/grub设置主要环境

2、设置GRUB密码


一、忘记root密码怎么办

1、可以进入救援(rescue)模式直接修改重置root密码

2、什么是救援模式?

在Linux中,救援模式是一种特殊的启动模式,用于修复系统问题或者恢复系统功能。在救援模式下,用户可以对系统进行诊断和修复,例如修复引导加载程序、修复文件系统错误、重置密码等操作。

二、救援模式重置root密码 


一忘记root用户密码。就无法执行任何面向整个系统的变更工作。不过Linux中很容易使用root账户重置密码。具体方法如下

 (我的系统版本:Red Hat Enterprise Linux 9)

1、使用rd.break(救援模式的一种内核参数)


(1)启动系统进入GRUB2界面后,按下<e>键进入GRUB编辑模式。
先按向下箭头选中rescue,再按<e>


(2)按向下箭头找到以Linux开头的那一行,在行尾先输入一个空格,再输入
 rd.break enforcing=o 

(3)按<Ctrl+x>组合键启动系统
(4)执行以下命令重新挂载文件系统:
 mount -o remount,rw /sysroot

<回车>后即可输入


(5)执行以下命令改变系统目录为临时挂载目录:
chroot /sysroot

(6)执行passwd命令修改root密码


出现划线句,即修改成功
(7)在根目录下创建相关文件(用于重新标记SELinux环境值):
 touch /.autorelabel

(8)执行exit命令退出chroot环境,再执行exit重启系统(需等待一段时间)。

2、使用shell


如果在VMWare虚拟机上操作不成功,可以尝试将Linux开头的那一行中的“rhgb quiet”先删除。
 rd.break这种方法一般用于修改root密码或者出现重大问题,临时中断运行,未装载任问文件系 统。
如果使用rd.break不能进入系统启动,则可以向内核传递“init=/bin/bash”或“nit=bin/sh”参数,使用Shell替代默认的daemon进程来重置root密码。

(1)启动系统进入GRUB2界面后,按下<e>键进入GRUB编辑模式。

(2)按向下箭头找到以Linux开头的那一行,使用“init=/bin/bash”或“nit=bin/sh”替换行尾的
”rhgb quiet“

(3)执行以下命令以可写方式重新挂载根目录:
mount -o remount,rw /

(2)执行以下命令修改root密码:
 passwd root

(3)如果系统启动了SELinux,必须执行以下命令,否则将无法止常启动系统:
 touch/antorelabel

(4)教行exec/sbin/init命令启动系统,或者执行exec/sbin/reboot命令重启系统。

三、修改GRUB配置

1、编辑/etc/default/grub设置主要环境

经过以上操作,我们会发现GRUB2界面等待5s后会自动启动,留给我们操作的时间太短,这对我们来说很不方便,可以通过修改/etc/default/grub文件修改想要的等待时间


2、设置GRUB密码


由上例得知,任何人不需密码都能进入GRUB编辑模式,这具有相当大的安全隐患,为
此可以设置GRUB口令,只有拥有口令的用户才能修改GRUB参数。方法是修改GRUB配
置文件,设定密码,以防止非法者进行GRUB编辑,
(1)编辑/etc/grub.d/00_ header文件,在末尾添加以下内容后保存该文件:
 cat<<EOF
 set superusers='admin'
 password admin 123456
 EOF


(2)执行grub2-mkconfig命令重新生成grub.cfg文件:grub2-mkconfig -o /boot/grub2/grub.cfg

(3)重新启动系统,在GRUB开始界面中按下<e>键进入GRUB编辑模式,输入用户名和密码

以上设置的密码是明文的,任何人都可通过该文件查看密码,存在安全隐患,GRUB可对这个密码进行加密。具体方法是先使用工具
 grub2-mkpasswd-pbkdf2生成加密的密码

然后将/etc/grub.d/00 header文件的password语句中的密码更换成上述以grub.phkd2sha开头的密文。最后执行grub2-mkconfig命令重新生成grub.cfg文件

觉得有用的点个关注不迷路!!!

本文标签: 密码 Linux root