You are not logged in.
Earlier I updated the kernel to my arch system and found this error while trying to boot. I hate to post this because there are so many topics like it, but I've been looking for hours for a solution to this problem and can't find one.
Here is the output:
Booting 'Arch Linux'
root (hd0,1)
Filesystem type is ext2fs, partition type 0x83
kernet /vmlinuz-linux root=/dev/sda3 ro
[Linux-bzImage, setup=0x4200, size=0x2ff2d0]
initrd /initrd @ 0xfd17000, 0x2c878c bytes]
Probing EDD (edd=off to disable)... ok
Decompressing Linux... Parsing ELF... done.
Booting the kernel.
:: Starting udevd...
done.
Waiting 10 seconds for device /dev/sda3 ...
ERROR: device '/dev/sda3' not found. skipping fsck.
ERROR: Unable to find root device '/dev/sda3'.
You are being dropped to a recovery shell
type 'exit' to try and continue booting
sh: can't access tty; job control turned off
My partition layout is like this:
swap: /dev/sda1
boot: /dev/sda2
root: /dev/sda3
extended: /dev/sda4
home: /dev/sda5
I have two hard drives, but i'm sure /dev/sda is the one with my OS.
Here are some things I've tried:
This was at the very bottom of the pacman wiki
# mkdir /mnt/arch
# mount /dev/sdaX /mnt/arch (your root partition)
# cd /mnt/arch
# mount -t proc proc proc/
# mount -t sysfs sys sys/
# mount -o bind /dev dev/
# mount /dev/sdaX boot/ (your /boot partition) #This step is not needed if you do not have a separate boot partition
# chroot .
# pacman -Syu udev mkinitcpio
# mkinitcpio -p linux
I've also tried performing the above, downgrading the kernel, updating my mirrorlist, reinstalling the kernel, and rebooting as mentioned here.
I've alsa tried a few other things that I've read, but can no longer remember.
Any help would be greatly appreciated! Thanks.
Last edited by colton7909 (2012-05-25 02:09:36)
Offline
Offline
UUID's and labels are much more reliable than device nodes. Use the link in sirocco's post.
That said, I don't think the devices got switched up, since you didn't change any partitioning-stuff(right?). T
ry using systemrescuecd, and use the boot-option "boot into installed linux". When I've had similair problems, systemrescuecd could usually boot into my linux-installation, and that'd allow me to rule out a lot of possible causes(and usually blame the bootloader)
Offline
Thanks for the help!
@sirocco: I tried as you suggested with no luck. I booted into the arch install disk, chrooted, and changed my /boot/grub/menu.lst kernel line to use the uuid instead and got the same error message with the uuid instead of device node.
@rayman: systemrescuecd booted my system flawlessly! I gave me some hope lol. Are you thinking this is a grub problem? Also in the recovery shell I did an ls on /dev and noticed that there are no /dev/sd** devices listed. Could this be a module problem?
Offline
same here, after the latest kernel-update & reboot, the same error appeared. The update message (during the rebuilding of modules, or what ever hooks etc are created after kernel updates) i could see that it mentioned an error in line 15 of some file, because something with "run" in it could be found (yeah, i know this isnt exactly onto the point, but that s all i remember). I ignored that as both kernel images (default & fallback) were reported to be created succesfully. So now I am on kubuntu, which makes me sad, I love everything about arch, but every once in a while a kernel update makes the system unusable.
colton, let us know if you found a way to fix it!
Last edited by jappel (2012-05-24 17:12:49)
Offline
while browsing the message-board:
someone who used testing hit something similiar, maybe it is related and the solution would work here as well:
Offline
In the "recovery shell", what is reported for:
ls -l /dev
Offline
Your error (and solution) is most likely here:
https://bbs.archlinux.org/viewtopic.php?id=142049
Offline
I've finally fixed the problem. It was mkinitcpio after all.
Solution:
1) "boot into installed linux" with systemrescuecd
2) execute "mkinitcpio -p linux" as root
3) reboot
Thanks you everyone for the help! I appreciate it!
Offline
Thank colton
Same problem here, but on a mac book (not mine eyh )
So, for those how have the problem (or need a live usb for mac or uefi systems),
1) with a 32bits system
- download gparted live cd
- use it for the step 3
2) with a 64bits system:
- you need the gparted live cd too: mount it and copy the EFI directory somewhere; then umount it;
- download a 64bits system (system rescue cd, as colton said is enough, follow the instructions for installation on their website first);
- mount you live usb, install the 64bits system;
- copy EFI system on the key
- edit the grub.cfg in EFI/boot/ , add the following before the other entries:
menuentry "System Rescue" {
set gfxpayload=keep
linux /syslinux/altker64 nomodeset efi
initrd /syslinux/initram.igz
}
3) repairing...
- boot the broken computer with the live usb
- mount the partition on which your system is (e.g. /dev/sda1 on /mnt)
- chroot it, init the system as needed (mount /dev, /proc, etc. the easier way is using init scripts)
% chroot /mnt /bin/bash
% /etc/rc.sysinit
% mkinitcpio -p linux
Offline