F9 doesn't find swap or /root system on new motherboard
craigwhite at azapple.com
Sun Jan 18 00:15:38 UTC 2009
On Sat, 2009-01-17 at 17:57 -0600, Roger Heflin wrote:
> M. Fioretti wrote:
> > Greetings,
> > My motherboard, on which I was running F9 x86_64 off one SATA drive, died.
> > I bought a new motherboard with a new cpu of the same type (AMD) and
> > connected the hard disk with F9 to it. Now Grub does start with these
> > options:
> > kernel/vmlinuz/-2.6.27-etc ro root=/dev/sda3 rhgb mem=2048M enforcing 0
> > but the process stops at a certain point, saying:
> > Trying to resume from /dev/sda2
> > Unable to access resume device (/dev/sda2)
> > Creating root device
> > Mounting root filesystem
> > Mount: error mounting /dev/root on /sysroot as ext3: no such file or
> > directory
> > IIRC I had these partitions:
> > /boot /dev/sda1
> > swap /dev/sda2
> > / /dev/sda3
> > /home /sda5
> > So (also from some research I made before posting) this means that on the
> > new board the kernel cannot find the swap anymore, but why? I mean, if it
> > boots, as it does, it means that it has found the device corresponding to
> > the hard drive, isn't it?
> It means that *grub* has found the device using *bios* calls. Linux
> does not use *bios* calls. And Linux is not find *any* partitions at
> all, even the boot one. Grub through bios calls loads vmlinuz and
> initrd into memory and then starts it up, which will find through
> Linux drivers everything needed to actually boot.
> The base problem is the new MB likely has a *different* sata device
> controlling the drives, and the driver for that is not in the initrd
> used to boot Linux, so Linux cannot find any disk devices.
> The typical fix is to boot a rescue, figure out from the rescue what
> driver is needed and update modprobe.conf and rebuilt the initial ram
> disk with that driver, and try again.
My only question to that is that it actually loaded the kernel
from /boot before things went awry.
Yes, I would agree that booting something like a live cd or rescue disk,
checking the loaded modules and rebuilding initrd makes sense but I'm
not convinced that it would work based upon the fact that it does
read /boot (/dev/sda1).
More information about the users