[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: LVM on software RAID - LILO



On Sat, 2004-10-09 at 21:16 +0300, Fabian Fagerholm wrote:
> I tried the following (3 x HDD):
> 
> In partman, set up the three disks to have identical partition tables:
> 
>       * A small primary partition with boot flag set.
>       * A large logical partition.
>       * A small logical partition.
> 
> I then took all the small primary partitions and created a RAID1 out of
> them (/dev/md/0). I put /boot on this (ReiserFS).
> 
> Then, I took the large logical partitions and created a RAID5 out of
> them (/dev/md/1). The small logical partitions were marked as swap.
> 
> I manually ran pvcreate and vgcreate on /dev/md/1. Then, using partman,
> I added logical volumes for /, /usr, /var, /home and /tmp. Still using
> partman, I assigned the mount points and chose to format all logical
> volumes as ReiserFS. Partman finished its work.
> 
> However, as a result of this, GRUB install was disabled, and LILO was to
> be used instead. LILO install didn't work; I tried specifying the first
> disk's MBR manually but LILO failed whatever I tried.
> 
> Am I right in assuming that both LILO and GRUB should work, since they
> can read the kernel image and initrd from one of the disks in the RAID1
> array that comprises /boot, and the initrd contains all neccessary
> things to access / on RAID5 and LVM? Ie. is it enough that /boot is on
> RAID1 or plain partition with no LVM?

I just tried with a cd image downloaded from the following url:
http://cdimage.debian.org/pub/cdimage-testing/daily/i386/current/sarge-i386-netinst.iso
The build date was 22-Oct-2004.

It's now possible to mark a RAID array for use with LVM. However, if I
do the above, the installer disables GRUB, and LILO refuses to install
to the default option ("/dev/md1: Master Boot record") which seems to be
wrong for this kind of setup. I expected to see /dev/md0 as the default.

I tried installing on /dev/md0
and /dev/ide/host0/bus0/target0/lun0/disc, but I just got the error
messages "The path /dev/md0 does not represent a partition of a hard
disk device" and "Running /sbin/lilo failed with error code "1"".

However, it does seem that it's impossible to do what I wanted. When I
adjusted the scenario, I got everything to work. I split up the three
disks into three partitions:

      * A primary partition with the boot flag set,
      * a large logical partition and
      * a small logical partition.

I then marked the primary partitions for RAID use, the large logical
partition for RAID use, and the small logical partition as swap.

Then, I assembled a RAID1 with the three primary partitions, and a RAID5
with the three large logical partitions. After that (and here's the key
difference), I chose to format the RAID1 as ReiserFS and mount it as /,
and created an LVM volume group on the RAID5, which I populated with
logical volumes for /usr, /var, /home and /tmp. All partitions were
ReiserFS.

This worked like a charm, and GRUB was nicely installed.

So: it should be clearly documented that it is not possible, in any way,
to put your / on RAID5, not with GRUB and not with LILO. My assumption
that it would be enough for the boot loader to access the initrd from
one of the disks in the RAID1 array (with /boot on it) to be able to
access / on RAID5 was apparently not correct -- or at least it doesn't
work in d-i when installing the boot loader. Perhaps it would work if
booting off another medium and skipping the installation of a boot
loader in d-i.

-- 
Fabian Fagerholm <fabbe@paniq.net>

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: