admin管理员组文章数量:1590499
前言
为什么要知道如何修改root密码
修改 root 密码是一项重要的技能,因为 root 用户在 Linux 系统中拥有最高的权限。以下是为什么需要知道如何修改 root 密码的几个原因:
- 系统安全:定期更改 root 密码有助于保护系统免受未经授权的访问和潜在的攻击。强密码可以增加系统的安全性。
- 丢失访问权限:如果忘记了 root 密码,将无法执行一些需要 root 权限的任务。知道如何重置密码可以避免这种情况。
- 管理用户账户:作为系统管理员,可能需要为其他用户设置或重置密码,以及管理整个系统的用户账户。
- 紧急情况:在紧急情况下,如系统崩溃或数据丢失,可能需要使用 root 用户来执行恢复操作。
需要注意的是,修改 root 密码应该谨慎进行,确保不会误操作或导致自己被锁定在系统之外。建议在修改 root 密码之前先计划好,并确保记住新密码或将其保存在安全的地方。
GRUB理论
GRUB(GRand Unified Bootloader)是一个多功能的系统引导加载程序,它在计算机启动时负责加载操作系统。以下是关于GRUB的一些详细介绍:
- 启动管理:GRUB 是计算机启动时运行的第一个软件,它负责加载操作系统的内核,然后由内核初始化操作系统的其他部分。
- 多系统选择:如果你的计算机安装了多个操作系统,GRUB 会提供一个菜单界面,让你选择要启动的操作系统。同样,如果安装了多个内核版本,你也可以通过GRUB选择不同的内核来启动。
- 引导过程:GRUB 的引导过程包括几个步骤,首先是BIOS启动,然后是GRUB自身被加载到内存中,接着是加载所选操作系统的内核,最后是内核的初始化过程。
- 配置灵活性:GRUB 的配置非常灵活,用户可以通过编辑配置文件来自定义启动选项,如设置超时时间、改变默认启动项等。这些配置文件通常位于
/etc/default/grub
和/boot/grub/grub.cfg
。- 恢复与备份:在某些情况下,GRUB 可能会因为操作系统的更新或硬件变化而损坏,这时需要通过特定的方法来恢复GRUB,以确保系统能够正常启动。
- 安全性:GRUB 还提供了一些安全特性,比如密码保护,可以防止未经授权的用户访问系统或更改启动设置。
- 广泛应用:GRUB 是目前 Linux 系统中使用最广泛的引导程序,几乎所有的 Linux 发行版都采用GRUB作为其默认的引导加载器。
综上所述,GRUB 理论涉及了计算机启动过程中的一系列操作和管理机制,它是连接硬件与操作系统之间的桥梁,确保了系统的顺利启动和运行。了解GRUB的原理和配置对于系统管理员和Linux用户来说是非常重要的,因为它能够帮助他们更好地控制和管理系统的启动行为。
修改进入系统时间
正常情况下会倒计时5秒进入系统,为了后续操作方便,我们把进入系统的时间更改成需手动回车进入系统
修改配置文件/etc/default/grub
vim /etc/default/grub
找到GRUB_TIMEOUT行,将值修改为-1
GRUB_TIMEOUT=-1
执行grub2-mkconfig命令重新生成grub.cfg文件
grub2-mkconfig -o /boot/grub2/grub.cfg
执行完成后,可通过reboot或手动重启系统
重启系统后可发现不再出现进入系统的倒计时,而需手动回车进入,避免了我们在操作时手脚不灵活带来的麻烦
修改root密码
root用户在系统中拥有最高权限,因此root用户的密码需要被记住,当我们忘记时可以通过下述方法进行修改root密码
rd.break修改root密码
1.启动系统进入GRUB2界面后,选择rescue行,按<e>键进入GRUB编辑模式
版本不同,GRUB2界面的菜单选项不同,我们需选择救援模式进行操作(含rescue的行)
2.按向下箭头找到linux开头的那一行,在行尾先输入一个空格,再添加下列内容 :
rd.break enforcing=0
3.按<Ctrl>+<x>组合键启动系统
4.执行以下命令重新挂载文件系统:
mount -o remount,rw /sysroot
5.执行以下命令改变系统目录为临时挂载目录:
chroot /sysroot
6.执行passwd命令修改root密码
passwd
7.在根目录下创建相关文件(用于重新标记SELinux环境值):
touch /.autorelabel
8.执行exit命令退出chroot环境,再执行exit重启系统
如果在VMWare虚拟机上操作不成功,可以尝试将linux开头的那一行中的“rhgb quiet”先删除
Shell修改root密码
1.启动系统进入GRUB2界面后,选择rescue行,按<e>键进入GRUB编辑模式
2.删除linux开头的那一行中的“rhgb quiet”,替换成“init=/bin/bash”或“nit=/bin/bash”
3.执行以下命令以可写方式重新挂载根目录:
mount -o remount,rw /
4.执行以下命令修改root密码:
passwd root
5.如果系统启动了SELinux,必须执行以下命令,否则将无法正常启动系统:
touch /.autorelabel
6.执行exec /sbin/init命令启动系统,或者执行exec /sbin/reboot命令重启系统
设置GRUB密码
设置GRUB明文密码
通过上述修改root密码操作可知,进入GRUB编辑模式无需密码,这一点是非常不安全的,容易让人修改掉自己的root密码,造成文件丢失、泄密的影响,因此我们需要设置GRUB密码防止他人通过GRUB修改我们的root密码
编辑/etc/grub.d/00_header文件
vim /etc/grub.d/00_header
在末尾添加以下内容保存该文件(可用Shift+G快速到达末尾):
cat <<EOF
set superusers='admin'
password admin 123456
EOF
执行grub2-mkconfig命令重新生成grub.cfg文件
grub2-mkconfig -o /boot/grub2/grub.cfg
重新启动系统,在GRUB开始界面中按下<e>键进入GRUB编辑模式,此时可以发现不再直接进入,而需输入用户名及密码才能进入
设置GRUB密文密码
上述设置的GRUB明文密码,他人可以通过查看GRUB的配置文件知晓,仍然存在不安全性,因此我们一般采用GRUB密文密码
编辑/etc/grub.d/00_header文件
vim /etc/grub.d/00_header
在末尾添加以下内容保存该文件(可用Shift+G快速到达末尾):
cat <<EOF
set superusers='lw'
password_pbkdf2 lw
EOF
使用工具grub2-mkpasswd-pbkdf2生成加密的密码
grub2-mkpasswd-pbkdf2
将/etc/grub.d/00_header文件的password语句中的密码更换成上述以grub.pbkdf2.sha开头的密文
执行grub2-mkconfig命令重新生成grub.cfg文件
grub2-mkconfig -o /boot/grub2/grub.cfg
重新启动系统,在GRUB开始界面中按下<e>键进入GRUB编辑模式
版权声明:本文标题:RedHat9.0如何修改root密码及设置GRUB密码 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/xitong/1728091446a1145145.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论