RedHat Linux 8 中系统引导程序过程及系统修复

Red Hat Enterprise Linux 系统启动过程的运行流程:
1、通电
2、bios初始化
3、磁盘引导
4、grub2文件引导
5、内核加载
6、系统初始化镜像
7、系统启动级别
8、用户账号密码登录

如果我们在系统启动过程中这些引导程序出现问题,那我们如何去应对和修复这些问题,下面针对每一个模块来进行分析和问题演练。

通电

这个模块是最简单的,系统启动最开始,如果没有通电根本无法开机,所以如果开机都无法开启就先去检查电源是否正常。


bios初始化

  • 对硬件检测
  • 初始化硬件时钟
    这个阶段就是检测我们的主机的硬件设备,如磁盘、内存条、显卡等设备,如果有问题就会发出警报声。
    进入bios模式可以在开机一开始按 [Esc] 键进入,或者在VMware虚拟机启动选项里选择打开电源时进入固件。
    在这里插入图片描述
    在这里插入图片描述

磁盘引导

Master Boot Record
主引导记录(MBR,Master Boot Record)是位于磁盘最前边的一段引导(Loader)代码。它负责磁盘操作系统(DOS)对磁盘进行读写时分区合法性的判别、分区引导信息的定位,它由磁盘操作系统(DOS)在对硬盘进行初始化时产生的。
它所在的位置是磁盘的0磁道1扇区的446个字节,它的作用是记录grub2引导文件的位置。
当MBR数据丢失时系统会因为找不到启动分区而停止启动
命令:fdisk -l ,可以列出我们的磁盘信息
在这里插入图片描述
可以看到,我的系统磁盘是/dev/sda ,而我们的启动程序是在/dev/sda1里,磁盘每个人的主机硬件是不一样的,所以要根据具体查看的信息确认。

问题模拟:
将 /dev/sda里的446个字节信息我们抹除掉,
dd if=/dev/zero of=/dev/sda bs=446 count=1
这是数据截取方式,这里我们将sda里的446个字节数据替换掉。
在这里插入图片描述
然后重启看出现的情况是什么

在这里插入图片描述
根据我们开机时进入bios的几个启动方式
第一项Removable Devices移动设备,显然我们没有;
第二项硬盘启动,根据我们刚才的操作现在系统已经找不到启动扇区了,无法启动;
第三项光驱启动,显然我们没有接入光驱;
第四项网络加载,所以现在系统会去自动寻找网络资源,可以看到上面显示的DHCP,获取动态网络。

解决方法:

  • 用光驱接入光盘进入系统抢救模式
    首先进入光盘镜像选择Troubleshooting排错故障
    在这里插入图片描述
    然后在Troubleshooting模式里选择Rescue a Red Hat Enterprise Linux system(抢救rhel系统)
    在这里插入图片描述
    进入抢救模式后,这四个选项:继续、只读挂载、跳过到shell、退出重启,当然我们要选择continue第一个
    在这里插入图片描述
    选完后加载完,让使用 [ENTER] 键进去shell
    在这里插入图片描述
  • 修复/dev/sda 磁盘
    根据这里的提示我们看到你的系统被挂载到/mnt/sysimage,如果想要还原根目录执行命令:chroot /mnt/sysimage,后面还有完成后执行“exit” 退出shell 并重启系统
    在这里插入图片描述
    执行完后得到的信息就和之前的系统信息一样了
    在这里插入图片描述
    再执行命令:grub2-install /dev/sda ,恢复我们磁盘的引导文件,完成 exit 退出重启系统
    在这里插入图片描述
    exit需要执行两次退出,重启后系统就恢复正常了

grub2文件引导

文件路径:

  • rhel7中:/boot/grub2/grub.cfg
    在这里插入图片描述
    在这里插入图片描述
  • rhel8中:将文件的内容划分开
    /boot/grub2/grub.cfg
    /boot/loader/entries/xxxxxxxxx.conf
    在这里插入图片描述
    这两个文件里的内容分别时对两个标题的分别设定
    在这里插入图片描述

grub2文件引导的作用:指定/boot位置,指定系统启动时加载文件成名。

问题模拟:
删除grub2文件,造成无grub2文件引导的情况:
rhel7:/boot/grub2/grub.cfg
rhel8:/boot/grub2/grub.cfg
/boot/loader/entries/xxxxxxxxx.conf
在这里插入图片描述
重启后系统进入如下界面,这种情况可以用两种方式进入系统,用系统光盘进入抢救模式或手动引导加载。
在这里插入图片描述

解决方法:

  • 手动引导
    在启动系统进入的界面输入如下指令
    set root=‘hd0,msdos1’ (hd0=系统的第一块硬盘,msdos1=第一个分区,如果你的系统放置的位置不一样就要自己记住再写)
    linux16 /vmlinuz-4.18.0-80.el8.x86_64 ro root=/dev/sda2 (加载内核版本到根分区,我的根分区是在sda2里)
    initrd16 /initramfs-4.18.0-80.el8.x86_64.img (加载系统内核镜像)
    boot (执行完上面的,输入boot进入系统)
    在这里插入图片描述
    手动引导并不能永久记忆在系统中,重启还是需要再引导,
  • 系统中安装
    如果我们损坏了/boot/grub2/grub.cfg或/boot/loader/entries/xxxxxxxxx.conf文件,系统没有重启时可以执行如下命令,如果重启了可以用光盘驱动进入抢救模式,恢复挂载后再执行。

rhel7:

[root@localhost ~]# grub2-mkconifg > /boot/grub2/grub.cfg

rhel8:

[root@localhost ~]# kerne-install add 内核版本号 内核镜像
例:[root@localhost ~]# kernel-install add  $(uname -r)  /lib/modules/$(uname -r)/vmlinuz
[root@localhost ~]# grub2-mkconifg > /boot/grub2/grub.cfg

$(uname -r) = 内核版本号的指代命令,因为使用命令“uname -r”可以查看内核版本。
执行完后再查看就可以看到文件已经被恢复好了。
在这里插入图片描述
在这里插入图片描述在这里插入图片描述


内核加载

内核路径:/boot/vmlinuz-4.18.0-80.el8.x86_64
加载内核作用:系统初始化硬件设备,只读挂载 “/” 设备

问题模拟:
删除内核文件:rm -fr /boot/vmlinuz-4.18.0-80.el8.x86_64
在这里插入图片描述
重启就会出现报错,找不到内核
在这里插入图片描述
解决方法:
重装内核
使用光驱启动进入抢救模式
在这里插入图片描述
还是先执行:chroot /mnt/sysimage
在这里插入图片描述
挂载驱动到 mount /dev/cdrom /mnt ,进入:cd /mnt/BaseOS/Packages
在这里插入图片描述
重新安装内核:rpm -ivh kernel-xxxxx.rpm --force ,因为默认是安装过的,所以用 --force 参数强制重新安装
在rhel8中内核的安装包是不一样的 “kernel-core-xxxx.rpm”
在这里插入图片描述
到这里在就完成重装了,“exit” 退出切换bios的启动顺序,重新启动。


系统初始化镜像

系统初始化镜像路径:/boot/initramfs-4.18.0-80.el8.x86_64.img
作用:
加载系统时钟
加载selinux
加载系统主机信息
加载/etc/fstab文件中磁盘挂在策略
加载磁盘配额
初始化系统程序开启开机启动服务
开启虚拟控制台
开启图形

问题模拟:
删除系统初始化镜像文件:rm -fr /boot/initramfs-xxxxx.img
在这里插入图片描述
报错找不到镜像文件
在这里插入图片描述

解决方法:
使用光驱启动进入抢救模式
在shell中mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)
在这里插入图片描述
到这里在就完成重装了,“exit” 退出切换bios的启动顺序,重新启动。


系统启动级别

级别说明
0关机
1单用户
2无图形网络模式
3无图形网络模式
4无图形网络模式
5有图形网络模式
6重启

问题模拟:
在/etc/systemd/system目录里的内容包括初始化系统程序开启开机启动服务,是否开启图形这些内容,而文件default.target 就是链接到 /lib/systemd/system/graphical.target 开机启动图形
在这里插入图片描述
如果这个文件链接出问题,比如链接到poweroff.target或reboot.target,那开机时就是又关机或无限重启
例: systemctl set-default reboot.target
在这里插入图片描述
删除之前的default.target链接,创建一个新的链接。
然后重启后系统就会不停的重启

解决方法:
在开机选择界面按进入到引导文件编辑模式,在内核加载选项最后加入启动级别5 ,按[ctrl]+[x]执行
在这里插入图片描述
在内核加载选项最后加入启动级别5 (有图形网络模式),按[ctrl]+[x]执行
在这里插入图片描述
然后登陆进系统例执行命令:systemctl set-default graphical.target ,修改错误的链接
在这里插入图片描述
再重启就恢复正常了。


超级用户密码忘记

如果忘记超级用户密码,无法登录超级用户。

解决方法:

  • 在开机选择界面按进入到引导文件编辑模式
    在这里插入图片描述
  • 在内核加载选项最后删除到ro选项,更改ro---->rw,ro=只读,rw=读写
    在这里插入图片描述
  • 加入rd.break参数终止系统启动进入单用户模式,ctrl+x启动
    在这里插入图片描述
  • 进入单用户模式后,执行命令:chroot /sysroot ,进入系统shell,成为超级用户身份
    在这里插入图片描述
  • 更改超级用户密码:echo hehe | passwd --stdin root
    在这里插入图片描述
  • 如果系统的selinux功能是开启的,需要建立一个文件:touch /.autorelabel ##当/.autorelabel ,文件存在会selinux会重新初始化,建立完后执行 exit 启动系统
    在这里插入图片描述
    启动后使用新密码可以登录超级用户。
  • 4
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
Red Hat Linux操作系统是一种广泛应用于企业级服务器的操作系统,其安装和配置需要按照一定的规范进行。以下是Red Hat Linux操作系统的安装和配置规范: 1. 硬件要求:在安装Red Hat Linux操作系统前,首先要确保计算机的硬件符合最低要求。通常要求至少有1GB的RAM、20 GB的硬盘空间以及一颗1.4 GHz的处理器。此外,还应检查硬件设备的兼容性,以确保其正常工作。 2. 安装媒介:根据Red Hat官方网站提供的下载链接,从官方网站或其他可信的地方下载最新版的Red Hat Linux操作系统光盘镜像文件。将光盘镜像文件刻录到DVD或创建启动盘。 3. 安装过程:将光盘或启动盘插入计算机,重启计算机并进入BIOS设置。将启动介质设为光盘或USB,保存设置并重新启动计算机。然后按照安装向导的指引,选择安装类型(图形化或文本模式)、分区和磁盘布局等设置。 4. 网络配置:在安装过程,需要为网络配置提供正确的网络IP地址、子网掩码、默认网关和DNS服务器。这些设置将确保操作系统能够正常连接到网络。 5. 安全性配置:在安装后,需要通过设置root用户密码和创建其他用户来强化系统的安全性。此外,还需要启动防火墙、禁止不必要的服务,并定期更新系统补丁来防止安全漏洞的利用。 6. 软件包管理:Red Hat Linux使用yum软件包管理器来管理软件包。通过yum命令可以方便地安装、更新和删除软件包。在配置系统时,可以根据需求选择安装需要的软件包,并进行必要的更新。 7. 日志和监控:配置系统的日志记录功能,将日志文件保存在合适的位置,并定期监测日志,以及系统的性能和事件。这将有助于及时发现和解决可能出现的问题。 最后,安装和配置Red Hat Linux操作系统需要遵循上述规范来确保系统能够正常工作,并提供高效、安全的性能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Howei__

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值