I been experimenting with software RAID1 under 6.1 on a test server, and 
here's some interesting things I've come across:

The test server in question is IDE only, with the drives configured as follows:

primary boot disk - ide0, /dev/hda
secondary boot disk - ide1, /dev/hdc

I'm not sure how my experiments would turn out on a SCSI box, so take what 
you read with a grain of salt and remember - YMMV.  ;-)

First off, it is possible to RAID1 the boot disk, including / and /boot 
under 6.1.  This turns out to be somewhat of a bad plan, at least on my 
test server.  I wanted to know what would happen if one of the drives died 
and the server had to be rebooted.

If the secondary drive fails booting from the primary drive is 
straightforward - it boots as normal but detects the secondary drive has 
failed and runs in degraded mode.  After shutting down the server and 
plugging the secondary drive back in, re-adding the second drive to the 
raid mirror was pretty easy - 'raidhotadd [md device] [device to be added]'.

If the primary drive fails, booting from the secondary is a little more 
problematic.  Since LILO doesn't get installed on the MBR of the secondary 
drive a boot floppy is necessary, which further complicates matters.  The 
boot floppy wants to make root /dev/md0, but it is unable to read the /boot 
directory and fails.  Oops, slight problem!  Unfortunately, trying to 
pre-install LILO to the MBR of the secondary drive seems to be a chicken & 
the egg problem.  In order to install LILO, I need to be able to boot from 
that drive and in order to boot from that drive I need LILO installed.  If 
their is a way to tell LILO to install to the MBR of a different drive, 
could someone enlighten me?

The only way I've been able to boot from the secondary drive is to put 
/boot on a separate partition that isn't RAID'ed.  Then you can make a boot 
disk that works.  It still wants to make root /dev/md0, but since /boot is 
on a non-RAIDed partition, it's able to read it and load the kernel and/or 
RAID modules.

Given the following issues:

1) The complexity of booting from the secondary drive.
2) Having to locate /boot on a non-RAID'ed partition in order for a boot 
floppy to work and having to keep the copies of /boot on both drives in sync.
3) The likelihood that a serious disk failure will cause the server to 
crash thereby necessitating a reboot.

4)  The simple fact the most disk drives are much more reliable than they 
used to be.

I'm inclined to do the following:

1) RAID important filesystems like /home and filesystems that change 
frequently like /var.

2) Leave the rest of the mostly static filesystems on regular ext2 partitions.

3) Continue to use cron to run my rsync script that keeps non-RAID'ed 
filesystems up to date.

This makes it pretty simple to boot from either drive, especially on my 
server that has front-facing hot swap drives.  It also preserves disk drive 
order which means /etc/fstab is still pretty much current, even when one of 
the boot disks has failed.  Shut the server down, take out the bad boot 
disk, move the secondary boot disk to that slot and reboot.  Sometimes it 
is necessary for me to boot from a floppy and run lilo to update the MBR on 
the secondary boot disk.  If I haven't made any changes to /etc/lilo.conf 
since the last update then it generally isn't necessary to boot from the 
floppy first.

One of my production servers is full SCSI and I could move the secondary 
drive to SCSI ID 1 on scsi0 and it would probably boot without the primary 
as SCSI ID 0, but that would mess up my drive order if the primary disk 
failed and I'd have to change /etc/fstab.  Currently the secondary disk is 
on scsi1 at the end of the chain so if it's not installed it doesn't mess 
up the disk device order.

Hope this gives everyone some insight, or at least some food for 
thought.  If someone has a better idea or thinks I'm way off base, please 
let me know.

-Eric


Eric Sisler
Library Computer Technician
Westminster Public Library
Westminster, CO, USA
[EMAIL PROTECTED]

Linux - don't fear the Penguin.
Want to know what we use Linux for?
Visit http://gromit.westminster.lib.co.us/linux


-- 
To unsubscribe: mail [EMAIL PROTECTED] with "unsubscribe"
as the Subject.

Reply via email to