Hi folks - here is the system: 

hda - 3GB IDE drive (all hda1)
hdb - ATAPI CDROM
hdc - 3.6GB IDE drive (all hdc1)

hda1 & hdc1 make LVM2 volume group VG1 (6.6GB). VG1 has four logical volumes: 

VG1-Root 2.7G (my original system which I am trying to rescue)
VG1-Swap 128M
VG1-Swap2 128M
VG1-NewRoot 1.5G (new Debian installation which won't work either)

What happened is this: everything was fine, I was booting into VG1-Root using 
lilo (boot=/dev/hda, root=/dev/mapper/VG1-Root). This was under a 2.6.10 
kernel. The system was originally installed from the Debian installer (version 
25 Jan 05) with a 2.6.8 kernel, but I compiled 2.6.10 some time last spring. I 
remember I had to re-use the 2.6.8 initrd to activate the LVs because something 
was wrong with initrd-tools at the time - but it was all working ok. 

On Saturday I compiled a 2.6.15.2 kernel only to find that it didn't work 
because devfs has been replaced by udev and my system relies on devfs to boot 
(something to do with device mapper). I didn't have time to mess about with 
udev so I compiled a new 2.6.10 kernel (identical to the existing one but with 
USB support added). I stupidly forgot that it needed the old ramdisk, so I ran 
lilo without the initrd= line and I now can't boot the system from HD.

So I burned Knoppix 4.0.2 and followed the instructions at 
www.knoppix.net/wiki/LVM2. As an aside, I would STRONGLY URGE the maintainers 
of Knoppix to include lvm-common and lvm2 on the Knoppix CD - they are only 
~700k and are completely essential for those of us using LVM2. My machine only 
has 64MB RAM so it ran out of memory during the apt-get command, and I was 
nearly stuffed (until a friend suggested using my USB keyfob as swap space).

I managed to activate and mount my LVs under Knoppix (kernel 2.6.12), and I 
edited my VG1-Root/lilo.conf to restore the use of the initrd. But when I ran 
lilo it bombed out with 

/proc/devices: fopen failed: No such file or directory
Is device-manager driver missing from kernel?
Warning: /proc/partitions does not exist: disc scan bypassed
Fatal: sorry, don't know how to handle device 0xfe00

... I ran lilo with "chroot /mnt/VG1-Root /sbin/lilo". 0xfe00 is device 254,0 
which is in /dev/mapper as VG1-Root - so far so good. But in 
/mnt/VG1-Root/dev/mapper the major number is 253. 

So I wondered if there had been some change to lilo and/or libdevmapper which 
caused that mismatch. It seemed obvious to me that that's why it was failing - 
because my original system had the LVs with major 253, and the Knoppix kernel 
thought they should be 254. 

So I downloaded the Debian Etch installer (20051111) and installed a completely 
new system on VG1-NewRoot. The installer failed to install lilo (see bug#351768 
if you're interested) but I thought, never mind, I'll do it with Knoppix. 

So I fire up Knoppix again (taking another ten minutes to do the apt-get 
install of lvm2) and mount VG1-NewRoot - and sure enough, the dev/mapper 
entries there are 254,x which looks good. So I run lilo again (chroot 
/mnt/VG1-NewRoot /sbin/lilo) and lo, I get the same error! This time I really 
don't understand it, since ALL the major numbers are 254 (in /proc/devices and 
in /dev/mapper AND in /mnt/VG1-NewRoot/dev/mapper) so it beats me. 

Can anyone tell me what's going on, and how to fix it? All versions of lilo are 
22.6.1 released Nov 04 (the one in VG1-Root/sbin, the one in VG1-NewRoot/sbin, 
the one on the Knoppix 4.0.2 CD and the one on the Etch installer CD). I can't 
find any reference to this error (on google or Debian BTS) later than 2003, 
which is when lilo was patched to work with libdevmapper (latest is 
https://www.redhat.com/archives/dm-devel/2003-November/msg00008.html).

Sorry about the length - thanks for reading, and grateful for any help. 

Regards,

Chris
(also posted to comp.os.linux.setup)

Reply via email to