LILO, Linux Crash Rescue HOWTO LILO 毁损,无法…

2008-02-23 07:20:52来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

LILO, Linux Crash Rescue HOW-TO 中译版
作者:Al Dev (Alavoor Vasudevan) alavoor@yahoo.com
译者:黄国伟 u4561055@cc.ncu.edu.tw
v6.0, 25 Dec 2000 翻译日期:19 Mar 2001


--------------------------------------------------------------------------------
这份文件探讨从 Linux 系统失灵中回复的方法。造成 Linux 系统失灵的各种原因可能是 - LILO 毁损、 linux 无法开机、 硬碟主开机记录 (Master Boot Record, MBR) 损坏、或是安装其他作业系统例如 Windows NT 而将 LILO 或 MBR 盖写掉所造成 linux 无法开机。
--------------------------------------------------------------------------------


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

1. 简介
您无法避免意外的发生;如果意外发生在 linux 系统,这可能会损害到硬碟主开机记录 (MBR) 或是 LILO (Linux boot Loader)。当 linux 由於硬碟故障而导致无法开机时,意外就会发生。假如您不小心重新划分磁碟,或是在 linux 系统的电脑上安装其他作业系统,例如:Windows 98/NT,LILO 也可能会失效。

这份文件给您一些点子、秘诀、和快速的指引来快速回复系统,而不必费心地研读上百页有关 LILO 或 Linux 的文件。

1.1 回复系统的快速步骤
循著这些步骤执行,以便从 LILO 或系统失灵中回复。


状况 1: 假如系统无法开机 -
取得并建立 tomsrtbt 开机磁片 http://www.toms.net/rb,并使用 tomsrtbt 开机磁片开机。使用 fdisk 指令找出分割区 (partitions)。试著用以下指令辨识出 root 分割区 -


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

bash# fdisk /dev/hda
bash# mkdir /test
bash# mount /dev/hda1 /test
bash# ls /test
您应该会看到 root 分割区显示如下 -
bin fd lib mnt proc sbin usr
boot dev etc home lost found opt root tmp var


--------------------------------------------------------------------------------
如果此分割区并非 root 分割区,试试下个分割区 /dev/hda2 。再继续尝试 hda3 、 hda4 、 hda5 等,直到您找出 root 分割区为止。如在 hda 仍无法找到,请重复以上的步骤在其他装置上, 例如 hdb, hdc, hdd 等.. 在建立新的 lilo 设定时, /usr、/var、与 /boot 分割区也是需要的。
以我的系统为例,root 分割区是在 /dev/hda4:


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

bash# mkdir /hda4
bash# mount /dev/hda4 /hda4
bash# cat /hda4/etc/fstab
阅读 fstab 的内容,并且按照 fstab 档案挂上 (mount) 分割区。像下面这样 -
bash# mount /dev/hda5 /hda4/boot
bash# mount /dev/hda6 /hda4/usr
bash# mount /dev/hda7 /hda4/var
bash# mount /dev/hda8 /hda4/opt
bash# mount /dev/hda9 /hda4/root
bash# mount /dev/hda10 /hda4/home


--------------------------------------------------------------------------------
以我的系统为例,按照 fstab 所显示,hda5 是 boot、hda6 是 usr , hda7 是 var、hda8 是 opt、hda9 是 root、hda10 是 home、而 hda11 是 windows95 的目录
编辑 /etc/fstab (不是 /hda4/etc/fstab)并且加入(以下简单的程式码)


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

/dev/hda4 /hda4 ext2 defaults 1 1
/dev/hda5 /hda4/boot ext2 defaults 1 1
/dev/hda6 /hda4/usr ext2 defaults 1 1
/dev/hda7 /hda4/var ext2 defaults 1 1
/dev/hda8 /hda4/opt ext2 defaults 1 1
/dev/hda9 /hda4/root ext2 defaults 1 1
/dev/hda10 /hda4/home ext2 defaults 1 1
/dev/hda11 /hda4/win95part vfat defaults 1 1

在我的电脑中,hda4 含有 linux 的 root 分割区、hda5 有 boot 分割区、
hda11 则有 windows 95 的 vfat 系统。

bash# mkdir /hda4/win95part
bash# mount /hda4/win95part
使用 fsck 或 e2fsck 指令来修复系统。
bash# man fsck
bash# man e2fsck


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


状况 2: 如果 LILO 是无效的..
依照状况 1 的步骤来排除问题。如果无法解决,则参照以下步骤。现在您应该已经挂上 /hda4 且已经编辑好 /etc/fstab 档案了。


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

bash# mount -a
bash# chroot /hda4 /sbin/lilo -q
bash# man chroot
bash# chroot /hda4 /sbin/lilo


--------------------------------------------------------------------------------
您也可以选择使用 /sbin/lilo 以代替 chroot。 lilo 加选项 -r 实际上就和 chroot 的指令是一样的。 强烈建议您使用 chroot,而不要使用 lilo -r,因为使用 chroot 比较方便,且较容易找出错误。
--------------------------------------------------------------------------------

bash# man lilo
bash# /sbin/lilo -r /hda4


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


状况 3: 如果 LILO 是无效的..
如果使用状况 1 和状况 2 的步骤均无法解决,假如您有使用 'mkbootdisk' 制作过开机片(於安装时或参考 'man mkbootdisk'自行建立),则使用您的开机磁片来开机并修复分割区。 mkbootdisk 存在於 mkbootdisk*.rpm 的套件,您必须安装它。 (译注:随不同发行套件而有所差异;请洽询您的发行套件厂商或组织)


状况 4: 如果以上状况 1、2、3 的步骤皆无法解决问题,且您也没有开机磁片

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Jaz-drive HOWTO -- 6. 从 Jaz 磁片启动系统

下一篇:Printing Usage HOWTO 如何使用打印机-1. 导言