Linux启动过程中会出现一些故障,导致系统正常启动失败。本文列举了几种典型的单用户模式故障修复、命令操作和Linux救援模式,以帮助读者了解此类问题的解决方案。
硬盘安装设置
一、单用户模式程序故障

Linux提供了单用户模式(类似于Windows的安全模式),可以保持在一个最小的环境。在单用户模式(运行级别1),Linux启动进入root shell,网络被禁用,只有少数进程运行。单用户模式可以用来修改文件系统损坏,恢复配置文件,移动用户数据,等等。

以下列举了几种典型的单用户模式修复系统故障。

案例1:硬盘行业混乱

最容易遇到的问题是在启动过程中硬盘可能有坏道或扇区。(数据损坏)的情况下,这种情况是由于异常电源,不关机。
这个问题发生在系统启动时,屏幕会显示出来:

按root密码或按Ctrl + D:

自动输入到单用户模式的根系,fsck -y / dev / HDA6(fsck的输入文件系统检查和维修订单,Y组检测自动修复,对错误的/ dev / HDA6错误的硬盘分区,根据具体的情况,请更改此参数),系统修复完成后,使用命令重新启动。

案例二:根密码遗忘

在单用户模式Linux不需要root密码(Red Hat系统不需要root密码,但SUSE Linux系统的不同需求。本文以Fedora Core 6为例),这使得它很容易改变root密码。重要的是知道如何进入单用户模式时,系统启动失败,进入多用户模式。

1,
在系统启动过程中,会出现如图1所示的图片,并按任意键输入蛴螬菜单选项。







01.gif
(3.03 KB)
2007-8-31 15:18

图1进入grbu菜单选项

如果你想在未来没有提示,直接进入GRUB菜单选项删除配置文件grub.conf的隐藏菜单项。

2,
按E键编辑蛴螬启动菜单选项,图2显示为e键后的蛴螬屏幕。







02.gif
(3.46 KB)
2007-8-31 15:18

图2启动菜单选项

通过箭头键移动到内核行,然后按E键获取编辑界面,如图3所示:







03.gif
(2.77 KB)
2007-8-31 15:18

图3内核行编辑界面

在光标的最后一行添加单个,按回车键返回上一屏,按B将系统自动引导到单用户模式,如果要更改root密码,则执行命令:

sh-3.1 # passwd root

更改成功后,命令出口的执行将重新启动。

在单用户模式下,我们可以纠正许多妨碍系统正常运行的问题,如:
1,
禁用可能停止系统运行的服务
如果禁用了桑巴舞服务,则执行:
sh-3.1 # chkconfig SMB关闭
下一个系统启动将无法启动桑巴服务。
2,
改变系统默认的运行级别
如果X Window无法启动或失败,您可以编辑/等/ inittab文件,记录在文本中,和initdefault启动级别更改为3:
编号:3:initdefault:

案例三,蛴螬选项设置错误

下图是一个控制台的信息,系统管理员不希望看到的,和错误15显示系统找不到指定的内核grub.conf。







04.gif
(5.93 KB)
2007-8-31 15:18

图4启动错误信息

我们观察到,因为打字错误,内核的文件vmlinuz是vmlinux,所以系统不能找到内核的可执行文件,我们可以按任意键回到GRUB编辑界面,修改这个错误,返回保存,按B键正常开机,当然,别忘了进入系统后修改grub.conf文件错误。
这是Linux用户在修改蛴螬设置时学习到的许多错误。当他们接触到这个黑屏时,他们应该注意错误的信息,并相应地加以修复。


二、启动故障排除

有时Linux在启动时会直接进入命令行接口(仅限于提示符)。在这个时候,许多用户选择安装GRUB甚至重新安装系统。事实上,一般这种故障常见的原因有两个:一是在GRUB配置文件错误的设置;二是GRUB配置文件丢失(有几个原因,例如内核文件或图像文件的损坏、丢失,或启动目录删除等),如果是第一种情况,可以修复首先通过GRUB命令制导系统;如果第二,是使用Linux修复救援模式(后续说明)。

首先,我们需要了解引导系统的启动过程。在grub.conf文件的主要配置选项如下。(注:GRUB配置文件 / / /开机GRUB grub.conf, / / grub.conf等是本文件的软链接):

标题Fedora Core(2.6.18-1.2798。FC6)

根(hd0,0)

内核/启动/ vmlinuz-2.6.18-1.2798.fc6 RO根=标签= / rhgb安静

initrd / / initrd-2.6.18-1.2798.fc6.img启动

标题指定GRUB引导系统;根段指定的 /启动分区的位置;核段指定内核文件位置、内核加载权限属性为只读(RO)和指定根分区的位置(根=品牌= /);initrd指定图像文件的位置。所以蛴螬的顺序加载或启动分区第一启动,然后加载内核和打开图像文件。

案例:标题Fedora Core(2.6.18-1.2798。FC6)部分被删除

在这一点上,系统在系统启动后会自动进入到。为了排除故障,我们可以依次进行以下操作:

1。找到分区的 /启动/食物/ grub.conf文件
GRUB >找到 /启动/食物/ grub.conf
(hd0,0)

2、检查grub.conf文件错误
GRUB >猫(hd0,0) / / / grub.conf GRUB引导
建议grub.conf文件要备份,如果系统安装和安装。如果有备份文件,如grub.conf.bak,然后备份文件可以被视为在这个时候,与当前文件相比,错误可以被发现。
GRUB >猫(hd0,0) / / / grub.conf.bak GRUB引导

3、确认错误后,GRUB引导是通过命令行完成,然后grub.conf文件进入系统后修复。
1)指定启动分区
根(hd0,0)
2)指定内核加载
内核/启动/ vmlinuz-2.6.18-1.2798.fc6 RO根=标签= / rhgb安静
3)指定图像文件的位置。
initrd / / initrd-2.6.18-1.2798.fc6.img启动

提示:蛴螬支持tab键命令完成

4。从启动/引导分区开始
启动(hd0,0)

命令行模式可以调用Grub菜单模式,按C键,或者它也可以用来测试新编译的内核(设置内核,启动新的内核和initrd镜像文件)。增加GRUB引导和Linux系统启动知识的了解将有助于这样的故障排除。


三、Linux救援模式应用

当系统不能进入单用户模式或当命令行无法解决启动问题时,我们需要使用Linux救援模式进行故障排除:

1,安装Linux磁盘(如果使用CD CD,然后将第一个引导CD)放入CD驱动器,设置固件BIOS以引导CD,当Linux安装屏幕出现时,输入Linux启动后的救援:提示符,进入救援模式。(为了了解救援模式的细节,您也可以看到F5键)。







05.gif
(6.91 KB)
2007-8-31 15:18

图5进入救援模型

2,系统会检测硬件,启动光盘上的Linux环境,促使你用语言选择救援模式(建议选择默认的英语,据测试,部分Linux系统中文乱码);我们与默认键盘设置;根据需要网络设置,大多数的故障维修不需要互联网连接,没有这个设置,选择号

3,下面的系统将尝试查找根分区,并给出以下提示:






06.gif
(10.3 KB)
2007-8-31 15:18

图6安装设置

默认情况下,在救援模式,硬盘的根分区将被安装到/ mnt / sysimage光盘的Linux环境目录。默认选项继续显示挂起权限是读写的。只读是只读的。如果有测试失败,您可以选择跳过跳过。在这里,由于您想修复系统,您需要有读写权限,并且一般选择默认选项继续。
进入下一步后,系统提示: / mnt / sysimage命令挂载根目录到我们硬盘系统的根目录。

案例1:双系统启动修复

当我们安装了双系统环境,首先安装Linux安装Windows;或已经安装了双系统Windows环境破坏后重新安装Windows,保存GRUB(主引导记录,主引导记录)将Windows系统引导程序NTLDR被Linux系统无法引导。

1、如果你想恢复双系统启动,先用上述方法进入救援模式的chroot命令执行如下:
sh-3.1 # chroot / / sysimage MNT

2,将根目录切换到硬盘系统的根目录,然后执行安装命令以重新安装:
sh-3.1 # GRUB安装/ dev / HDA
/ dev / HDA是硬盘的名字,如使用SCSI硬盘或Linux安装第二块IDE硬盘,此设置应作相应的调整。

3、依次执行退出命令,退出chroot方式和救援模式(执行两退出命令):
sh-3.1 #退出
sh-3.1 #退出
重新启动系统后,将恢复引导的双系统引导。

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

下一个系统引导初始化过程中是非常重要的一个过程来读取它的配置文件/ etc / inittab,重启系统基本服务程序和默认运行级服务程序完成系统的启动,如果 / / inittab等误删除或修改错误,Linux不会正常启动,如图7所示。在这一点上,只有通过这样的问题是可以解决的救援模式。







07.gif
(6.79 KB)
2007-8-31 15:18

图7 / / inittab文件丢失等错误引导的例子

1。恢复备份文件的方法
进入救援模式后,执行chroot命令后,如果有该文件的备份(强烈推荐的重要数据目录系统中,如 / /引导等等等等,备份),复制备份文件直接退出重新启动。如果它是一个配置文件修正错误,如比较典型的 / / /开机GRUB grub.conf和 / / passwd文件修改错误等,你也可以直接将恢复。如果有一个备份文件 / / inittab.bak等,它是在救援模式下执行:
sh-3.1 # chroot / / sysimage MNT
sh-3.1 # CP / / /等等inittab.bak / inittab

2。备份文件没有恢复方法
如果一些配置文件丢失或软件被删除,没有备份,可以通过重新安装软件包回收。首先,找出RPM包 / / inittab等属于,即使文件丢失,因为RPM数据库是可用的。
sh-3.1 # chroot / / sysimage MNT
sh-3.1 # RPM的QF / / inittab等
initscripts-8.45.3-1

退出chroot模式:
sh-3.1 #退出

安装的RPM包的安装光盘(在救援模式,CD通常安装在/ mnt /源目录):
sh-3.1 #安装开发 / / /源/ mnt HDC

的Fedora系统的RPM包存储在Fedora /转速的光盘目录。其他Linux的位置非常相似。这里没有枚举。此外,由于硬盘系统修复根目录/ mnt / sysimage下,它需要使用根选项来指定它的位置。重写的RPM包, / / inittab等安装文件:
sh-3.1 #转- IVH,replacepkgs --根/ mnt / / / sysimage MNT源 / / / initscripts-8.45.3-1.i386.rpm Fedora包
rpm命令选项,-- replacepkgs,代表覆盖安装,而文件已经执行完毕后恢复。

如果你想恢复只有 / / inittab等在RPM包文件,你可以进入救援模式后执行的命令。
sh-3.1 # rpm2cpio / mnt /源/ Fedora / / initscripts-8.45.3-1.i386.rpm RPM
| cpio - IDV / /决定等。
sh-3.1 # CP等 / / / sysimage inittab MNT /等

注意,当这个命令执行时,它不能直接恢复文件的目录,它只能提取到当前目录,并恢复文件名的路径来写一个完整的绝对路径,在文件被提取出来,它可以复制到 / mnt / sysimage目录位于根分区。

救援模型是Linux维护的有力武器。本文介绍了两个实例,并对其应用方法进行了说明,希望能给读者一点启示,为解决Linux系统的故障,有必要充分了解Linux的指导过程,以便对故障进行有效的判断和处理。
在这篇文章中所有的操作都在Fedora Core 6系统进行。

本文来自ChinaUnix的博客,如果你看一看原文,请指出: