Upgraded from Debian Lenny to Squeeze, and my machine won't boot

Matt Graham danceswithcrows at usa.net
Tue Mar 29 08:59:51 MST 2011


>>> 2.2.26: cant read the initrd file
>>> 2.2.22: waiting for root file system
>>> The wait timed out, and got this error: /dev/sda5 does not exist.

This is what I'd expect to see if the kernel didn't contain support for the
SATA or SCSI chipset for the controller where the first disk lives.  This
would also happen if you're using an initrd and the initrd doesn't contain the
right module for the chipset.

> On Mon, Mar 28, 2011 at 4:53 PM, Mark Phillips wrote:
>> I have made some progress.... When I use these parameters at the grub
>> prompt, the machine boots. X is dead, and so is mysql...not sure why

The X config that was valid for the previous version is probably invalid for
the new version.  mysql probably got bumped up a minor version too, so the
config file syntax changed.

>> However, I cannot change menu.lst to reboot.

This isn't surprising if it can't find the root filesystem because there's no
support for the chipset.

>> grub> root(hd0,msdos5)      //msdos5 is the only option
>> grub> linux /boot/linux-2.6.21.1-686 root=/dev/hda5
>> grub> initrd /boot/initrd-2.6.21.1-686

hda is an IDE disk.  Is your disk IDE or SATA?  That's an old kernel, but SATA
support was totally in there then.  Also, the newest kernels treat
*everything* as SCSI, even if it's IDE, unless you enable a bunch of
deprecated stuff.

From: Dazed_75 <lthielster at gmail.com>
> Maybe boot up a live CD and verify the partitioning is what you
> thought you had and the contents are as you expect?

Partition tables don't generally change unless you explicitly make those
changes yourself.

> you refer to hda5 and in another you say the message you got
> referred to sda5.

Whether an {IDE, SATA} disk is referred to as hd* or sd* is dependent on
kernel age and the options that are enabled.  It's kind of a mess, but that's
how history played out.

This sort of thing is why I like to upgrade systems in small pieces instead of
in one gigantic chunk.  If you upgrade A, then B, then C, and stuff breaks
after C, you can narrow the problem down a lot.  If you upgrade ABC, and stuff
breaks, you have a lot more to look at, and it takes longer to fix.  I also
always have a custom kernel with everything needed to mount / built in (not as
an initrd), but I do that mostly for historical reasons and because I can. 
There's no reason to shy away from putting the things you need to mount / in
an initrd... except for threads like this, which show up a few times a
year....

-- 
Matt G / Dances With Crows
The Crow202 Blog:  http://crow202.org/wordpress/
There is no Darkness in Eternity/But only Light too dim for us to see



More information about the PLUG-discuss mailing list