> Everything has been done, we got a slackware7 installed straight
> into a software raid 1 disk set but still cannot boot from there,
> LILO says "Sorry don t know to handle device 0X900" We got lilo
> 021-10 from Red Hat but even with the patches it still behaves the
> same way .. Is there any building option for the
> lilo-0.21-10.src.rpm pack or LILO just cannot do it ?
>
> "there are some days when you ride the bike for two hours and 110 Km
> are gone, and there are some when 12 hours are not enough to deal
> with a 10km uphill /:("
this is how I do it on Slackware 7.0
I do not use the red-hat patched LILO, but rather use the stock
version. This info was posted many moons ago by [EMAIL PROTECTED]
(many thanks). I have added some comments to it to make the process
easier (hopefully) to understand.
assume that you have two disks that make up the raid 1 you wish to
boot from and that this raid set is designated /dev/md0, that this
raid set is in fact the directory "/boot" and is mounted on the root
at /boot. The root directory in turn is made of another raid set
/dev/md2 ... this is not important, the root could easily be a single
disk partition such as /dev/hdc1
the lilo config file would look like this
### LILO # RAID 1 BOOT MINI HOWTO
#Start LILO GLOBAL
# begin with a marker for the disk where the /boot directory is
# mounted. This is where LILO will look for the image of the kernel
# and other files it needs to properly setup and complete the boot
#process.
disk = /dev/md2
# add a pointer for boot that defines the bios address of the boot
# disk. If your bios is capable of automagically determining that
# the first disk has died and can switch to the second, this entry
# will be 0x81 for the lilo.confg.disk2 file
bios - 0x80
# tell the boot process the geometry of the drive. This parameter can
# be found on the drive (usually) or ... for example - ide drive hda
# cat /proc/ide/ide0/hda/geometry
# for a 20 gig ibm drive model IBM-DPTA-372050
sectors = 63
heads = 16
cylinders 43800
# the next entry is a dummy which makes LILO "happy" with the 0x900
# md device -- any /dev/mdx can be used here except the one used for
# disk = above
partition = /dev/md0
# tell lilo where the 1st raid 1 sector is located. NOTE: I've tried
# this where the raid 1 boot sector is not the first partition on the
# drive and it does NOT work... at least not for me. Recommend that
# the boot RAID 1 be the first partition. If someone works out how to
# do this easily without a problem, I'd like to know.
# The first sector of the partition can be gotten from the command
# fdisk -u -l /dev/hda
start = 63
# tell lilo where to write the Master Boot Record
# for the second drive, assuming /dev/hdb, this would be /dev/hdb
# even if you intend to move the drive to hda if their is a failure.
# This is where LILO will write the boot image, not where to boot
# will occur from after POST.
boot = /dev/hda
# other miscellaneous LILO stuff you might want to have
prompt
timeout = 50
vga = normal
# End LILO GLOBAL
# One or more boot images
image = /boot/vmlinuz
# if you use raid 1 or 5 striped over raid 0; then
initrd = /boot/initrd.gz
label = LinuxR1overR0
root = /dev/md2
read-only
image /boot/bzImage
label = LinuxRaid
root = /dev/md2
read-only
#End Lilo
In the above examples, for LinuxRaid, both /dev/md0 and /dev/md2
are conventional Raid's, md2 could be any kind of raid made up of
disk partitions. All would be marked as partition type "fd"
For the LinuxR1overR0 example, /dev/md0 must be made of real disks
and could be marked as "fd" or started by the initrd - linuxrc
script. The disadvantage of using partition type 83 is that if a
member of the /dev/md0 raid set is moved, the array will fail to
start manually but will autostart if marked as type 'fd'. The same is
true of an underlying raid0 raid set -- it is easier to mark it as
'fd' and allow the kernel to auto start it, then have initrd -
linuxrc start the overlying raid 1's, 5's ... whatever manually with
'raidstart'. Just to fool around, I have a created a full raid 1
consisting of a single disk partition and a raid 0 pair. This works
fine in the above scenario. The "little" /boot raid 1 is mounted
in the larger raid 1 and can be either manually started or
autostarted by the kernel. The initrd - linuxrc then starts the large
raid 1 and switches the root. Works throught more types of failures
if the kernel autostarts as much as possible.
Michael
[EMAIL PROTECTED]