Hi On Fri, Mar 1, 2013 at 10:44 PM, David Benfell <benfell@xxxxxxxxxxxxxxxxx> wrote: > > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > Hi all, > > So far, my attempt to install Arch Linux on a UEFI system is a total > facepalm moment. The problem is in booting post-install. > > So, first, does anyone have actual--and successful--experience > installing Arch on a UEFI system? Yes, I went to the Arch Wiki, which > initially pointed me at GummiBoot. There are actually two sets of > instructions, one given where I looked first, for the UEFI entry, and > another under the entry for GummiBoot. Neither succeeds, but I wound up > following the latter set of instructions (and cleaning up extra entries > with efibootmgr, which fortunately makes this relatively easy). > > GummiBoot says it can't find /vmlinuz-linux. I tried modifying the > configuration to say /boot/vmlinuz-linux, but no joy. Apparently, I'm > really supposed to copy this file and the initrd image to the EFI > partition, but nobody says where in the EFI partition, so I have no idea. > > I also tried following the instructions for grub-efi. I'm just > mystified. I managed to install the right package, but from there I just > wasn't understanding a thing. I've been using linux since 1999 so this > shouldn't be so completely mystifying. > > I tried installing rEFInd (from sourceforge). As near as I can tell, it > does indeed detect all the possible boot options on the system. But when > I try booting the Arch installation, it says it can't find the root > partition. It also detects the GummiBoot option, but that leads the same > place as before. Finally, it detects the Windows option, which I hope > still works (unfortunately I do need this). > > I guess getting something that just works--like it did with BIOS > systems--is not in the cards. What do I do now? I installed Arch on my new home server several days ago and I had similar experience with UEFI that you had. I decided to go with gummiboot as it sounds simpler, and installation instructions [1] are cleaner than for other UEFI bootloaders. efibootmgr did not work for me so I started from "copy it to the 'default' location $esp/EFI/boot/bootx64.efi for x86_64 systems." (see [1]). I was hoping that my ASRock H61M/U3S3 will recognize gummiboot bootloader. But no. It shown me cryptic error something "No device found". I reformatted UEFI system partition, upgraded motherboard UEFI, but nothing helped. So I renamed gummiboot.efi to $ESP/shellx64.efi and then booted "default shell" from matherboard UEFI graphical UI. Only then I was able to run efibootmgr and set path to gummiboot binaries. Resume: my motherboard does not recognize " $esp/EFI/boot/bootx64.efi" as a default shell. I mounted $ESP to /boot, copied kernel there, setup systemd hook for gummiboot binaries and everything works like charm now. Additionally I use multiple-devises btrfs [2] for root fs so I had to add "btrfs" hook to mkinitcpio.conf. [1] https://wiki.archlinux.org/index.php/Gummiboot [2] https://btrfs.wiki.kernel.org/index.php/Using_Btrfs_with_Multiple_Devices PS: UEFI works great with Arch, but some Arch UEFI documentation cleanup is required.