用softraid做raid1的时候的启动问题

2005-07-12

呵呵,自己随便写写,有点乱,但愿大家能够看明白。

我用的是redhat as 3.5的系统,用两个scsi做系统。

安装的时候使用了softraid,对整个系统做了镜像。希望的效果是任何一个硬盘出问题,系统都可以正常启动工作。虽然现在的softraid做的系统可以对 /boot 分区也做镜像并且可以启动,但实际上启动的时候,redhat仍然是从第一个scsi盘引导的。如果是第二个硬盘宕掉,那么系统是可以启动的,但是如果是第一个硬盘挂掉,系统就没有办法引导了,虽然第二个硬盘里面的数据都还在。

于是我就找了很多相关资料,终于找到一个通过修改grub实现的方法了。

系统做了raid之后,虽然整个系统都是mirror了的,但是实际上grub的引导仍然是从第一硬盘,也就是sda开始的。因为软raid设备 /dev/md0 是在系统起来之后才出现的。为了让系统可以从raid1的两个盘中的任意一个引导,就要修改grub的设置,让他可以随便找一个OK的盘,从它里面的引导分区,也就是 /boot 分区中找到引导信息。

首先编辑 grub.conf

# vi /boot/grub/grub.conf
default=0
timeout=10
#splashimage=(hd0,0)/boot/grub/splash.xpm.gz
title Red Hat Enterprise Linux AS (2.4.21-32.EL)
# root (hd0,0)
kernel /boot/vmlinuz-2.4.21-32.EL ro root=/dev/md0 hdc=ide-scsi
initrd /boot/initrd-2.4.21-32.EL.img

这个文件里面的 hd0 就是我的第一个scsi硬盘。可以查看/boot/grub/device.map 知道详细。
# cat /boot/grub/device.map
# this device map was generated by anaconda
(fd0) /dev/fd0
(hd0) /dev/sda

分类:技术 | 标签: |

发表评论

您的电子邮箱地址不会被公开。