linux系统排错

本文介绍了系统的启动流程,包括从通电到图形界面的全过程,并详细阐述了mbr引导记录、grub引导文件、系统内核文件等关键组件损坏后的修复方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.系统启动流程

 

通电
-->bios
-->mbr引导
-->grub文件引导阶段
-->启动内核,只读挂载/设备
-->系统初始化阶段
系统初始化阶段加载initrd镜像
开启初始化进程systemd
开始selinux
加载内核参数
初始化系统时钟,键盘,主机名称
重新读写挂载/设备
激活raid,lvm
激活配额
启动multi-user.target.wants中的所有服务
开启虚拟控制台

 

启动图形

二、mbr引导记录损坏挽救措施

--mbr引导损坏后只需要在系统中执行

--grub2-install /dev/vda    ##/dev/vda为系统安装的磁盘路径。

--命令就可以修复了。下面详细说说在进不去系统时用镜像挽救系统。

首先用/dev/zero覆盖系统mbr记录,(模拟mbr损坏)

重启发现系统挂了。

现在关掉虚拟机,挂载镜像,重启。

新建一个镜像,

设置优先启动镜像。

重启后进入。选择第三个trouble的那一个。

选择第二个挽救系统。

然后出现有几个提示,continue,

提示告诉我们真实的系统挂载在/mntsysimage上,

再说了一遍系统挂在路径。点OK

然后我们获得了挽救系统的shell。

我们只要切换到真实系统,执行修复mbr的命令就行了。

这样就修复完了。

然后删掉刚才挂载的镜像,重启,就行了。系统正常启动。

三、grub引导文件损坏

/boot/grub2/grub.cfg这个文件记录了grub引导的记录,如果这个文件丢失后系统也会出错无法启动。

在系统中执行

grub2-mkconfig > /boot/grub2/grub.cfg    ##修复grub文件。

----------------------------------------------------

在系统关掉的情况下也可以进入到镜像挽救模式进行修复。(和上面的mbr的修复过程类似,这里就不说了)

镜像挽救比较麻烦,还要挂载镜像等等,

这里有个比较简单的方法,手动引导grub

下面主要讲解一下,手动引导grub进入系统的过程。进入系统后执行grub修复命令就行了。

grub引导文件“不小心”损坏了

重启后,系统又挂了。

set root='hd0,msdos1'      #引导系统分区
linux16 /boot/vmlinuz-3.10.0-123.e17.x86_64 ro root=/dev/vda1    #手动引导内核启动程序
initrd16 /boot/initramfs-3.10.0-123.e17.x86_64.img    ##引导系统初始化

然后就加载内核初始化系统,进入系统。

在系统中执行

grub2-mkconfig > /boot/grub2/grub.cfg     ##grub引导修复文件就行了。

四、系统内核文件丢失

/boot/vmlinuz-3.10.0-327.el7.x86_64    ##系统内核文件

这个文件丢失后,是不能用命令自动修复的,需要在在镜像安装包中解压获得,然后复制到指定位置就行了。

我们先看一下文件属于哪个安装包。

只要解压这个安装包,然后复制文件到指定文件夹下就行了。(命令在后面)

现在演示一下文件丢失的情况。

文件不小心丢失了。

重启后系统又挂了。

这是我们需要进入镜像的救援模式下恢复文件

省略重复过程(挂载镜像启动救援模式)过程。

挂载镜像后进入后就获得一个shell

然后我们复制挂载的镜像安装包到 系统的mnt目录下

切换到真是系统的shell,解压安装包,复制文件到/boot/下就行了。

这样就好了,关机,移除镜像,重启,发现系统已经正常启动了。

五、系统初始化文件丢失

/boot/initramfs-3.10.0-327.el7.x86_64.img    #系统初始化文件。

文件损坏了。

系统又挂了

挂在镜像,重启进入援救模式。切换到系统shell,执行命令,

mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)    ##修复系统初始化文件。

修复好后 重启系统正常启动

六、系统启动级别

 系统的启动级别一共有六个:
     0:系统停机模式,系统不能正常启动,机器关闭
     1:单用户模式,root权限,用于系统维护,禁止远程登陆
     2:多用户模式,没有NFS网络支持
     3:完整的多用户文本模式,有NFS,登陆后进入控制台命令行模式
     4:系统未使用,保留一般不用
     5:图形化模式,登陆后进入GUI模式
     6:重启模式,默认级别不能为6,

设置系统启动级别为shutdown,

可以看到提示    移除了旧链接,创建新的链接。到/usr/lib/systemd/system/shutdown.target

/usr/lib/systemd/system/目录就是系统初始化时候启动运行。

设置好后,然后重启。

系统不能正常启动,

可能系统会卡住。

修复措施。

在系统启动时,在grub的界面按e进入编辑模式,自定义启动级别。

按e

按e后进入到编辑模式

往下翻到linux16这一行,在最后添加 5

,按ctrl+x 执行

系统正常进入

编辑运行级别为graphical.target

系统就修复好了。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值