This guide is for booting from UEFI.
-
Get an USB with Arch Linux ISO flash in (I use balena-etcher)
-
Boot from Arch (in UEFI mode)
-
$ fdisk -l
to find out where the Arch installation partition and EFI partition are -
Try mount, e.g.,
$ mount /dev/nvme0n1p1 /mnt
to mount the Arch partition, "/dev/nvmeXn1pY" or "/dev/sdXY" (substitute "X" and "Y" with your disk/partition numbers), to/mnt
-
Try mount, e.g.,
$ mount /dev/nvme1n1p1 /boot/efi
to mount the EFI partition, "/dev/nvmeXn1p1" or "/dev/sdX1" (substitute "X" with your partition number), to/boot/efi
Run
$ mkdir /boot/efi
, if there is no/boot/efi
available, then mount again. -
$ arch-chroot
-
$ grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader=arch_linux
-
Reboot to test
If the Entry of Windows Is not in GRUB Boot Menu
-
Run the below, then reboot to test
$ sudo os-prober $ grub-mkconfig -o /boot/grub/grub.cfg
-
If the entry is still not there,
$ fdisk -l
to look for YOUR EFI PARTITION, "/dev/nvmeXn1p1" or "/dev/sdX1" (substitute "X" with your partition number) -
$ blkid /dev/nvme1n1p1
to get theUUID
of the partition -
$ nano /etc/grub.d/40_custom
to manually add the entry (replaceYOUR-UUID
with the UUID got from step 3) at the end of the filemenuentry "Windows 10" --class windows --class os { serach --no-floppy --set=root --fs-uuid YOUR-UUID chainloader ($root)/EFI/Microsoft/Boot/bootmgdw.efi }
-
$ grub-mkconfig -o /boot/grub/grub.cfg
again, then reboot to test