I recently upgraded Arch, which included a kernel update, which meant I had to copy the kernel image over to /EFI/arch in my EFI boot partition... when I try to boot /EFI/arch/vmlinuz-linux from the refind boot menu, it successfully boots /EFI/arch/vmlinuz-linux, but when it tries to mount my root partition: I get these messages, followed by a recovery shell which does not pickup keyboard input:

Running early udev hook [udev] warning: /lib/modules/3.17.1-1-ARCH/modules.devname not found -- ignoring ::running hook [udev] :triggering uevents... waiting for device /dev/disk/by-partuuid/(partition uuid)... ERROR: unable to find root device 'partuuid=(partuuid) you are being dropped to a recovery shell

my EFI/arch/refind-linux.conf looks like this:

"Boot with standard options" "ro root=PARTUUID=(my partition uuid(yes, it is correct.)) nomodest" "initrd=EFI/arch/initramfs-linux.img"

note: I did not copy over the initramfs files from the root partition because I wasn't sure if I should or not...

  • Don't edit your title as solved. Pick @grawity's answer as the correct one by selecting the tick mark next to the answer.
    – Journeyman Geek
    Nov 4, 2014 at 1:41

1 Answer 1


Your kernel command line has:


In other words, you're telling the kernel to look for an initramfs in the EFI system partition, in the EFI/arch directory. So yes, you should have copied the initramfs .img file there.

Though your copied log messages do show an initramfs being loaded and running, but it appears to be outdated or incompletely generated.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .