首页 > 系统相关 >Linux Red Hat重置密码和修改GRUB密码

Linux Red Hat重置密码和修改GRUB密码

时间:2024-04-02 14:30:19浏览次数:26  
标签:界面 GRUB grub grub2 密码 Linux root

前言

我们在使用Linux红帽的过程中可能会忘记root密码,很多小伙伴可能会重装红帽,接下来介绍两种省时省力又简便的方法。

修改GRUB密码

在重置密码之前我们需要注意两点,第一点是GRUB界面我们有时间限制,有些小伙伴可能还没反应过来就已经进入登录界面,所以我们需要修改相关的配置文件防止跳秒。第二点就是们需要先对GRUB进行加密处理,对GRUB进行加密的主要目的是为了增强其安全性。GRUB是一个多系统引导管理器,它负责在计算机启动时加载和传输控制到操作系统的内核。因此,GRUB是计算机启动过程中的关键组件,对其进行加密可以有效防止未经授权的访问和篡改。接下来要我们操作一下:

(1)设置主要环境

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

vim /etc/default/grub

把第一行的数字改为-1,这样每次启动时不会跳秒,不至于手忙脚乱重启服务机

修改上面这个文件之后,必须执行grub2-mkconfig命令重新生成grub.cfg文件

ggrub2-mkconfig -o /boot/grub2/grub.cfg

再reboot重启系统即可生效。

(2)设置GRUB密码

我们是通过修改/etc/grub.d目录下的配置文件来设置、修改GRUB密码,/etc/grub.d目录中有很多数字开头的脚本文件,在此之前先介绍一下/etc/grub.d目录中的主要脚本文件。

00_header:这个脚本通常包含GRUB配置文件头部的一些通用设置和变量定义。
10_linux:这个脚本负责生成代表已安装Linux内核的启动项。它遍历/boot目录中的内核文件,并为每个内核创建一个启动菜单项。
20_memtest86+ 或 20_test:这些脚本与内存测试工具memtest86+有关,用于在GRUB菜单中添加一个内存测试选项。
30_os-prober:此脚本用于检测系统上安装的其他操作系统(如Windows或macOS),并为这些系统生成启动菜单项。
40_custom:这是一个用户可自定义的脚本,你可以在这里添加非标准的启动项或进行其他自定义配置。
41_custom 或其他更高数字:其他以数字开头的脚本文件可能由特定的软件包或用户添加,以执行特定的任务或添加特定的启动项。

接下来跟我一起来操作吧!

(1)编辑/etc/grub.d/00_header文件,在末尾添加以下内容保存文件:

cat << EOF

set superusers='admin'   #用户名(随意设置,这里是登录进GURB界面的用户名)

password admin 123456  #密码

EOF

保存退出

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

grub2-mkconfig -o /boot/grub2/grub.cfg

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

以上设置的密码是明文的,当密码以明文形式存储时,任何能够访问存储位置的人都可以直接看到密码,这增加了密码被泄露的风险。而使用密文存储密码,即使攻击者能够访问存储位置,也无法直接看到密码的原始内容,因为密文是经过加密处理的,无法直接还原为明文。所以接下来进行密码加密。

(1)输入grub2-mkpasswd-pbkdf2生成加密的密码

grub2-mkpasswd-pbkdf2

Enter password输入设置的密码,红色框框后面的就是我们设置密码后生成的密文,把后面这一串密文复制到/etc/grub.d/00_header文件

复制的密文放到黄色箭头后面,然后保存退出

然后再执行grub2-mkconfig -o /boot/grub2/grub.d重新生成grub.d文件,即可。

启动虚拟机,进入GRUB界面,输入用户名以及你设置的密码就可进入下图所示的界面。

GRUB的密码设置加密成功。

Red Hat重置密码

方法一:

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

(2)找到下图位置,空一格输入下面命令

rd.break console=tty0

或者

rd.break enforcing=0

(3)然后按下<Ctrl>+x启动,进到如下界面,回车即可

(4)执行以下命令改变系统目录临时挂载目录

mount -o remount,rw /

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

chroot /sysroot

(6)执行passwd修改root密码

passwd root

(7)在根目录下创建相关文件(用于重新标记SELinux环境值)

touch /.autorelabel

(8)执行exit退出chroot环境,再执行exit重启系统

然后稍等片刻,重启之后root密码就已经改成功了。

方法二:

如果使用rd.break不能进入系统启动,则可以向内核传递“init=/bin/bash”或“init=/bin/sh”参数,使用shell代替默认的daemon进程来重置root密码。

(1)启动系统进入GRUB2界面,光标移动到第二个有rescue标志的,按下<e>键进入GURB编辑模式。

(2)然后找到下图所示的框框位置,在后面添加 init=/bin/bash 或者 init=/bin/sh

(3)然后按下<Ctrl>+x启动,进到如下界面

如果你进入的界面是下图所示的样子,按回车即可。

(4)执行以下命令以可写方式重新挂载根目录

mount -o remount,rw /

(5)与上述方法一样,执行命令passwd修改root密码

passwd root

(6)与上述方法一样,如果系统启动了SELinux,必须执行以下命令,否则无法正常启动系统

touch /.autorelabel

(7)输入下面的命令重启系统

exec /sbin/init

或者

exec /sbin/reboot

重启之后,我们的root密码就重置成功了,有什么不懂的地方可以留言一起讨论,如果对你有帮助的话,给我点个赞吧。

标签:界面,GRUB,grub,grub2,密码,Linux,root
From: https://blog.csdn.net/cx2004811/article/details/137258200

相关文章

  • Linux下创建root/普通用户
    1.Linux下创建root用户Ubuntu默认没有root用户,需要为其创建root用户,方法如下:sudopasswdroot:输入当前用户密码,然后输入root用户的密码,即可创建完成。切换到root用户的方法为:su-或su-root:输入root用户的密码即可登录,退出输入exit临时获取root用户权限su......
  • 若以框架修改密码时强密码校验
     代码:若以框架中ruoyi-ui/src/views/system/user/profile/resetPwd.vue页面中:在data()里加:constcheckPassword=(rule,value,callback)=>{if(!/[A-Z]+/.test(value)||!/[a-z]+/.test(value)||!/\d+/.test(value)||!/[`~!@#$%^&*()\-=_+,.?<>/;'......
  • MySQL-linux安装-万能RPM法
    一、MySQL的Linux版安装1、CentOS7下检查MySQL依赖1.检查/tmp临时目录权限(必不可少)由于mysql安装过程中,会通过mysql用户在/tmp目录下新建tmp_db文件,所以请给/tmp较大的权限。执行:chmod-R777/tmp2.安装前,检查依赖rpm-qa|greplibaiorpm-qa|grepnet-tools......
  • Linux 中新建用户和组
    查看当前登录账号:whoami`who`命令在Linux系统中用于显示当前登录到系统的用户信息。这些信息包括用户ID、终端类型、登录来源、登录时间、空闲时间、CPU使用情况和用户活动等。所有用户都可以使用这个命令来查看系统上的登录情况。  查看当前用户的userid和groupid......
  • 去除电脑的管理员密码、安装金格浏览器
    问题:忘记笔忘本电脑管理员的密码思路:制作PE系统的U盘启动盘,设置BIOS从U盘启动,进入后重置管理员的密码为空后。重启电脑即可第一步:下载制作启动用U盘的工具   https://www.bilibili.com/video/BV1qk4y1c7AH/?spm_id_from=333.337.search-card.all.click&vd_source=d1cc9a7......
  • 【攻防技术系列】 linux没有curl / wget如何实现下载功能 ( 测试成功版 )
    最近在分析挖矿木马,发现挖矿木马在入侵后都会对系统自带的部分命令进行替换或劫持。最常见的就是将wget和curl命令重命名。在多个挖矿木马同时竞争的情况下,没有wget和curl该如何远程下载挖矿脚本呢?直接看挖矿脚本是如何实现的。这里面涵盖了很多知识点,非常值得学习!funct......
  • linux中新建、删除、赋权限文件
    新建文件(非目录)touch新建一个空文件,如果文件已存在,则只更新其访问时间和修改时间。使用echo命令,并通过重定向将输出内容写入到一个新文件中,这样可以创建一个空文件,如果文件已存在则会覆盖之前内容。使用vi文本编辑器可以打开文件进行编辑,如果文件不存在则会新建新建的文......
  • Linux研究(6):Linux 硬链接和软连接-详解
    导言:当涉及到Linux文件系统中的链接时,有两种常见类型:硬链接(HardLink)和软链接(SymbolicLink,也称为符号链接或软连接)。它们用于在文件之间创建关联,提供了一些非常有用的功能。下面是对硬链接和软链接的详细解释以及一个实验样例。1.硬链接(HardLink)硬链接是通过文件系统......
  • Linux enable命令教程:启动或关闭shell内建指令(附实例详解和注意事项)
    Linuxenable命令介绍enable是Linux系统中的内建命令,用于启动或关闭shell内建指令。如果执行的文件名称与shell内建指令相同,可以使用enable-n来关闭shell内建指令。如果不加-n参数,enable可以重新启动已关闭的指令。Linuxenable命令适用的Linux版本enable命令在大多数Li......
  • Linux ntsysv命令教程:如何配置运行级别服务(附案例详解和注意事项)
    Linuxntsysv命令介绍ntsysv(NetworkSysV)是一个命令行应用程序,它提供了一个简单的文本用户界面来配置在选定的运行级别中要启动的服务。这个工具显示了可用服务的列表(来自/etc/rc.d/init.d/目录的服务)以及它们的当前状态和描述。Linuxntsysv命令适用的Linux版本ntsysv命......