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

after a long afternoon of cursing at the installer...



I've heard there is a lack of installation reports... I'd don't feel like 
filing a bug, but I need to vent a little.

Today I was installing Debian on a machine with a Mylex RAID controller.
Everything was running quite smoothly up to the point where the kernel should 
install itself... Here's the error:

Please Hit return to continue.  /usr/sbin/mkinitrd: constituent 
device /dev/rd/disc0/part2 does not exist
Failed to create initrd image.
dpkg: error processing kernel-image-2.4.25-1-386 (--configure):

Sooooo, /dev/rd/disc0/part2 does not exist. Of course it does, just not in 
the /target chroot. It's from devfs.

Is there a sane reason for the installer to use devfs and not for the 
installed system? If there is a simple workaround that I failed to see, I'd 
really appreciate some enlightenment. I guess this inconsistency was the main 
problem that led to this lenghty mail, but I'm not 100% sure.

I got around that with this dirty loop running on tty2 while installing the 
base system:

while true
do
  if [ -e /target/etc/mkinitrd/mkinitrd.conf ]
  then
    mv mkinitrd.conf.fixed /target/etc/mkinitrd/mkinitrd.conf
    exit
  fi
done

I had to change ROOT=probe to ROOT=/dev/rd/c0d0p2, then it worked. Of course I 
couldn't do that directly in the file as the kernel gets installed almost 
right after the initrd-tools and there is no time for that. Fixing it and 
installing the base packages again from the installer menu does not work.

When I thought I was out in the clear, disaster struck. Grub doesn't install:

0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
/dev/rd/disc0/part2 does not have any corresponding BIOS drive.

I tried fixing /boot/grub/device.map by hand, but it didn't get any better.

Then i tried installing LILO instead, but that just failed silently. At this 
time, I was about to start weeping and kicking the damn machine, but I knew 
better. I just tried rebooting and booting with the kernel from the install 
CD into the installed system on the disk.

Now, am I stupid, or is there no way to use the install CD as a rescue medium? 
I might have been a little upset at the time and missed it, but I think the 
help on the CD contained no references to rescue/emergency booting and there 
was no machine with a reasonable web browser in the vicinity so I could 
check.

After that I just tried booting the machine from the array in the hope that 
grub or at least lilo (which failed silently earlier) was installed in the 
MBR. I had some luck, as there was grub from a previous Redhat install still 
in the MBR and I could easily boot into the installed system, I just had to 
pick the root partition and find my way to the kernel and the initrd. Oh 
yeah, and picking between /dev/rd/disk0/part2 and /dev/rd/c0d0p2, since I 
didn't really know which of these will be seen by the kernel when it loads 
the DAC960 driver from the initrd. As my luck would have it, I failed the 
first time :-)

And then, surprise! I couldn't boot any further than to single user mode, 
because the bloody fstab was empty and I had to write it on my own. Where the 
hell should that get created? After the mkinitrd fix the base system 
installed successfully and I don't have the faintest idea what went wrong 
here.

It's a little bit sad that I used more time installing the basic OS than 
installing a mail server, antivirus and writing a script to convert mailboxes 
from 300 users to maildirs. Oh yeah, and converting an old sendmail config to 
postfix.

Anyway, it works now.

Flames, ridicules, sympathies and requests for more information gladly 
accepted. Tomorrow. It's been a long day. Too long.

If there's anything I can do to make the installer better, don't hesitate to 
contact me. I'm also reading -boot from today on.

regards,
Borut.



Reply to: