FS#10050 - System won't boot after upgrade to kernel 2.6.24.4 - ext3 is unknown
Attached to Project:
Arch Linux
Opened by Otakar Truněček (otakar) - Tuesday, 01 April 2008, 09:05 GMT
Last edited by Roman Kyrylych (Romashka) - Sunday, 06 April 2008, 08:36 GMT
Opened by Otakar Truněček (otakar) - Tuesday, 01 April 2008, 09:05 GMT
Last edited by Roman Kyrylych (Romashka) - Sunday, 06 April 2008, 08:36 GMT
|
Details
Description: my system won't boot with new kernel 2.6.24.4,
it complaints, that root device couldn't be mounted because
of unknown file system. My root device's filesystem is ext3.
Happens with my custom initrd even with fallback initrd.
|
This task depends upon
Closed by Roman Kyrylych (Romashka)
Sunday, 06 April 2008, 08:36 GMT
Reason for closing: Fixed
Additional comments about closing: new mkinitcpio solve this problem
Sunday, 06 April 2008, 08:36 GMT
Reason for closing: Fixed
Additional comments about closing: new mkinitcpio solve this problem
I reinstalled arch and did a full system upgrade. I expected it to become unbootable again, but it didn't (and I do have a keymap hook). Clearly some combination of variables were interacting in some weird way. I still have the borked system around if anyone wants me to try something or get information about it.
Anyway, I removed keymap hook from mkinitcpio.conf, rebuild the image and system boots just fine.
to Miguel: if your system doesn´t boot can you write anything to shell or is complete freezy?
It doesn't freeze; I believe I end up within the initial ram disk. I have a prompt (ramfs> IIRC) and a limited selection of commands (echo, cd, mount, etc... those included in klibc if I'm not mistaken).
I compared the boot messages of working and non-working installs. I think it's clear that the non-working initrd is not loading any disk-related modules. For instance, in the working install I see messages like:
libata version 2.21 loaded
ata_piix 0000:00:1f.2:version 2.11
scsi0: ata_piix
scsi1: ata_piix
ata1: SATA
ata2: PATA
etcetera. In the non-working initrd I don't see _any_ of these messages.
I copied the packages mkinitcpio 0.5.18.1-1 and a fresh kernel26 2.6.24.4-1 over to the partition where the non-booting system is installed. I also copied my current (working) system's mkinitcpio.conf. I booted off the live cd, chrooted into the non-booting system, and used pacman -U to update mkinitcpio and kernel26. I moved the just created vmlinuz26 and kernel26.img to /boot (with new names), updated grub's menu, and rebooted. I get the same as before: nothing disk, scsi, sata, etc. related on the boot messages, and I'm dumped to a ramfs$ prompt. The messages I get are:
:: Loading root filesystem module...
Attempting to create root device '/dev/sda8'
ERROR: Failed to parse block device name for '/dev/sda8'
unknown
ERROR: root fs cannot be detected. Try using the rootfstype= kernel parameter.
Waiting for devices to settle...done.
and then it explains the root device doesn't exist, and that it'll drop me to a recovery shell.
The weird thing is that the same machine boots fine after a full reinstall, using the same kernel, the same mkinitcpio.conf file, the same everything as far as I can tell. Could it be that something (kernel headers, libraries, something) is corrupted? Maybe I messed up something beyond repair during my initial recovery attempts.