Linux系统故障排查和修复技巧_linux修复大全(linux系统故障处理流程)

Linux系统故障排查和修复技巧_linux修复大全GRUB引导错误信息,我们观察发现因为打字错误,内核文件的“vmlinuz”打成了“vmlinux”,所以系统无法找到内核的可执行文件。
我们可

GRUB引导错误消息证实,由于拼写错误,内核文件中的“vmlinuz”被键入为“vmlinux”,因此系统无法找到内核可执行文件。

您可以按任意键返回GRUB编辑界面并更改此错误。按Enter 保存并按“b”正常启动。当然,之后不要忘记更改grub.conf文件中的错误。进入系统。

这是许多Linux 新手在更改GRUB 配置时常犯的错误。如果您看到此黑屏提示,请注意错误消息。您可以相应地修改它。

(二)GRUB引导故障排除

我发现有时Linux 启动后会直接出现GRUB 命令行界面(只是一个“grub”提示符)。这时,很多用户都会选择重新安装GRUB,甚至重装系统。

事实上,造成这种失败的两个最常见的原因一般是:

一是GRUB配置文件中某个选项设置不正确。

其次,GRUB 配置文件丢失(由于多种原因,例如内核或映像文件损坏或丢失,或者/boot 目录被意外删除)。

对于第一种情况,可以先使用GRUB命令引导系统,然后进行修复。在第二种情况下,您将需要使用Linux 救援模式来修复它(本文稍后将介绍)。

首先,您需要了解GRUB引导系统的引导过程。 grub.conf 文件中的主要配置选项是:

(注意GRUB配置文件是/boot/grub/grub.conf,而/etc/grub.conf只是这个文件的软链接)

标题Fedora Core (2.6.18-1.2798.fc6)

根(hd0, 0)

内核/boot/vmlinuz-2.6.18-1.2798.fc6 ro root=LABEL=/rhgb 安静initrd /boot/initrd-2.6.18-1.2798.fc6.img

在:

“title”部分指定GRUB 引导的系统。

“root”部分指定/boot 分区的位置。

“kernel”部分指定内核文件的位置。当内核加载时,权限属性是只读的(\’ro\’)并指定根分区的位置(root=LABEL=/)。

“initrd”指定图像文件的位置。

因此,当GRUB 启动时,它首先加载/boot 分区,然后加载内核文件,最后加载映像文件。

案例“title Fedora Core (2.6.18-1.2798.fc6)”段被误删除

此时系统启动后会自动进入“GRUB”命令行。要排除故障,请按顺序执行以下步骤:

1. 找到/boot/grub/grub.conf文件所在分区。 GRUB 找到/boot/grub/grub.conf(hd0, 0)

2. 检查grub.conf 文件是否有错误。 GRUBcat (hd0, 0)/boot/grub/grub.conf 安装并设置系统后,建议您备份grub.conf 文件。备份grub.conf.bak 等文件。您可以查看备份文件并将其与当前文件进行比较以查找是否有错误: GRUBcat (hd0, 0)/boot/grub/grub.conf.bak

3. 确定错误后,首先从命令行完成GRUB引导,然后进入系统后修复grub.conf文件中的错误。

1) 指定/boot分区的根目录(hd0,0)。

2)指定内核加载内核/boot/vmlinuz-2.6.18-1.2798.fc6 ro root=LABEL=/rhgb Quiet

3) 指定镜像文件位置initrd /boot/initrd-2.6.18-1.2798.fc6.img。

提示:GRUB 支持Tab 键命令补全

4. 开始从/boot 分区(hd0, 0) 引导。

命令行模式可以通过在GRUB 菜单模式下按“c”键来调用,也可以用于测试新编译的内核(设置内核、创建新内核和映像文件、initrd 启动)。了解有关GRUB 引导和Linux 系统引导的更多知识对于解决此类问题非常有帮助。

(三)Linux救援模式应用

如果您的系统无法进入单用户模式,或者存在无法使用GRUB 命令行解决的引导问题,则应使用Linux 救援模式进行故障排除。

请按如下方式进行。

1. 将Linux 安装CD(如果使用CD,则为第一引导CD)插入CD-ROM 驱动器,并将固件CMOS/BIOS 配置为从CD 引导。当出现Linux 安装屏幕时,键入“boot”,然后键入“boot”。”提示“linuxcue”,按回车即可进入救援模式。(如果想了解更多关于救援模式的信息,也可以按F5查看。)

2. 系统会检测硬件,启动进入光盘上的Linux环境,并要求您选择救援模式下要使用的语言(根据笔者的测试,在某些Linux上我们建议选择默认的英语)。系统,选择中文会出现乱码);使用键盘设置。默认的“我们”就可以了。对于大多数故障修复,您不需要配置此设置并选择否。 ”。

3.接下来,系统将尝试寻找根分区,并出现挂载提示。默认情况下,硬盘根分区挂载到光盘上的/mnt/sysimage 目录下。在ROM Linux 环境中,默认选项“Continue”表示读/写,“Read-only”表示只读。如果检测失败,选择“跳过”。这里,我们需要修复系统,所以需要读写权限。通常会选择默认选项“继续”。

进入下一步时,系统会提示您运行“chroot /mnt/sysimage”命令,将根目录挂载到硬盘系统的根目录下。

案例一:双系统启动修复

如果安装双系统环境,请先安装Linux,然后安装Windows。或者,在双系统环境中的Windows 安装损坏后,存储GRUB 的MBR(主引导记录)将被自动删除。安装程序被Windows系统删除并被NTLDR覆盖,导致Linux系统无法启动。

1. 如果要恢复双系统启动,请先按照上述方法进入救援模式,然后运行chroot 命令,如下所示: sh-3.1# chroot /mnt/sysimage

2. 将根目录切换到硬盘系统根目录,然后执行grub-install命令重新安装GRUB。 sh-3.1# grub-install /dev/hda “/dev/hda”是硬盘名称。例如,如果您使用的是SCSI 硬盘或Linux 安装在第二个IDE 硬盘上,则需要相应地调整此设置。

3. 接下来,依次运行exit命令退出chroot模式和rescue模式(运行exit命令两次)。 sh-3.1# exit 当系统重新引导时,恢复使用GRUB 引导的双系统引导。

案例2:修复丢失的系统配置文件

系统启动过程中一个非常重要的进程是init进程,它读取配置文件/etc/inittab并启动系统的基本和默认运行级别服务程序,防止/etc/inittab被意外删除以完成系统的启动。或者修改不正确,Linux将无法正确启动。此时此类问题只能通过救援模式来解决。

/etc/inittab 文件未找到启动错误示例

1.运行chroot命令后,有一种方法可以恢复该文件的备份(/etc、/和其他重要数据目录)。 (需要备份你的引导等),直接复制备份文件,返回,退出,重启。

对于配置文件更改错误,例如典型的/boot/grub/grub.conf 或/etc/passwd 文件更改错误,您也可以直接修复和恢复它们。

假设您有备份文件/etc/inittab.bak,请在救援模式下运行。 sh-3.1# chroot /mnt/sysimage sh-3.1# cp /etc/inittab.bak /etc/inittab

2、如何在不使用备份文件的情况下进行恢复如果某些配置文件丢失或者软件被误删除且没有备份,可以通过重新安装软件包来恢复。

首先,找到/etc/inittab所属的RPM包(即使文件丢失,RPM数据库也在那里,所以你可以找到结果)。

sh-3.1# chroot /mnt/sysimage sh-3.1# rpm -qf /etc/inittab

初始化脚本-8.45.3-1

退出chroot 模式。

sh-3.1#结束

挂载包含RPM包的安装光盘(在救援模式下,光盘通常挂载到/mnt/source目录)。

sh-3.1#挂载/dev/hdc/mnt/source

Fedora 系统的RPM 软件包位于CD-ROM 上的Fedora/RPMS 目录中。其他Linux系统上的位置类似,这里就不一一列举了。

此外,您正在修复的硬盘系统的根目录位于/mnt/sysimage 下,因此您必须使用——root 选项指定其位置。

/etc/inittab 文件会覆盖已安装的RPM 软件包。

我们专门整理了上百道【运维技术栈面试题】,成为您运维面试路上的好助手。这样,你就可以毫无惊慌地参加面试并获得高薪offer。

这些面试题涵盖了从Shell、MySQL到K8s等云原生技术栈,适合运维行业新人以及运维行业新人的面试需求。升职或换工作以增加薪水。

本次访谈集内容为

174 运维工程师面试题128 k8s 面试题108 shell 脚本面试题200 Linux 面试题51 Docker 面试题35 Jenkis 面试题78 MongoDB 面试题17 ansible 面试题60 dubbo 面试题53 Kafka 面试题18 mysql 面试题40 nginx面试题题77 redis面试题Zookeeper题28

总共1000多道面试题,内容全面且有价值。

174道运维工程师面试题

1.什么是运维?

2、运维人员在工作场所经常需要与操作人员进行交互。运营人员做什么工作?

3. 您目前有300台服务器,您如何管理它们?

4. 简要说明RAID0和Raid1raid5这两种工作模式的工作原理和特点。

5、LVS、Nginx、HAproxy有什么区别?

6. Squid、Varinsh、Nginx 有什么区别,你在工作中如何选择?

7.Tomcat和Resin有什么区别?

8.什么是中间件?

9、Tomcat中的8005、8009、8080这三个端口是什么意思?

10.什么是CDN?

11.什么是网站灰度发布?

12、请简单说明一下DNS域名解析的过程。

13.什么是RabbitMQ?

14.Keepalived如何工作?

15.描述LVS工作流程的三种模式。

16、mysql的innodb如何识别锁定问题以及mysql如何减少主从复制延迟?

如何选择?

8.什么是中间件?

9、Tomcat中的8005、8009、8080这三个端口是什么意思?

10.什么是CDN?

11.什么是网站灰度发布?

12、请简单说明一下DNS域名解析的过程。

13.什么是RabbitMQ?

14.Keepalived如何工作?

15.描述LVS工作流程的三种模式。

16、mysql的innodb如何识别锁定问题以及mysql如何减少主从复制延迟?

17.如何重置mysql root密码?

#以上关于Linux系统故障排除及修复技巧_Linux修复百科仅供参考。相关信息请参见官方公告。

原创文章,作者:CSDN,如若转载,请注明出处:https://www.sudun.com/ask/92079.html

(0)
CSDN's avatarCSDN
上一篇 2024年6月24日 下午7:03
下一篇 2024年6月24日 下午7:03

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注