zh-CN:Boot Loaders The boot loader is the first piece of software started by the BIOS or UEFI. It is responsible for loading the kernel with the wanted kernel parameters, and initial RAM disk before initiating the boot process. You can use different kinds of bootloaders in Arch, such as GRUB and Syslinux. Some bootloaders only support BIOS or UEFI and some support both.
This page will only contain a short introduction and the most used configurations that users will encounter. For detailed information, please see the corresponding pages of each boot loader.
Both BIOS and UEFI Boot Loaders
UEFI-only Boot Loaders
Linux Kernel EFISTUB
The Linux kernel can be booted directly without a boot loader. See EFISTUB for more information.
Gummiboot is a UEFI Boot Manager (not a boot loader) which provides a menu for EFISTUB kernels. See Gummiboot for more information.
rEFInd is a UEFI Boot Manager which provides a menu for EFISTUB kernels. It is alternative to Gummiboot. See EFISTUB#Using rEFInd for more information.
ELILO is the UEFI version of the BIOS-only LILO (although they do not share code). It was originally created for Intel Itanium systems which supported only EFI 1.x (precursor to UEFI 2.x). It is the oldest UEFI bootloader for Linux. Elilo config file
elilo.conf is similar to LILO's config file. ELILO does not support chainloading other EFI applications. and does not provide a menu by default (setting up requires additional configuration as described in
elilo/docs/textmenu_chooser.txt file. Upstream provided compiled binaries are available at http://sourceforge.net/projects/elilo/ and AUR package at AUR.
BIOS-only Boot Loaders
NeoGRUB provides a means to boot Arch from the Windows boot loader without installing an additional boot loader. It is provided by the EasyBCD tool running on Windows. This is a great option for dual-booting Windows and Arch, especially if you find that Windows has trouble when booted or chainloaded from another bootloader. See NeoGRUB for more information.
Booting Arch from NeoGRUB has not been tested yet from Windows 8 and/or UEFI systems.
On some UEFI motherboards like boards with an Intel Z77 chipset, adding entries with
bcfg from the EFI Shell will not work because they don't show up on the boot menu list after being added to NVRAM.
This issue is caused because the motherboards can only load Microsoft Windows. To solve this you have to place the
.efi file in the location that Windows uses.
bootx64.efi file from the Arch Linux installation medium (
FSO:) to the Microsoft directory your ESP partition on your hard drive (
FS1:). Do this by booting into EFI shell and typing:
FS1: cd EFI mkdir Microsoft cd Microsoft mkdir Boot cp FS0:\EFI\BOOT\bootx64.efi FS1:\EFI\Microsoft\Boot\bootmgfw.efi
After reboot, any entries added to NVRAM should show up in the boot menu.