You are not logged in.
What are the steps to remove systemd-boot and set GRUB as the default bootloader?
Offline
Welcome to the forums, developic!
https://wiki.archlinux.org/title/GRUB
Last edited by 5hridhyan (2026-02-11 08:44:19)
---
Online
First you have to disable systemd-boot. It's not required but necessary
Offline
First you have to disable systemd-boot. It's not required but necessary
No, you do not have to do any such thing.
Offline
ReDress wrote:First you have to disable systemd-boot. It's not required but necessary
No, you do not have to do any such thing.
That's until you have to install bare constants there. Meh - Leanurt can go do that himself
Offline
**Steps to switch from systemd-boot to GRUB (UEFI Arch Linux):**
1. Install packages
`sudo pacman -S grub efibootmgr os-prober` (add `grub-customizer` if desired)
2. Install GRUB to ESP
`sudo grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB`
(adjust `--efi-directory=` if your ESP mounts elsewhere, e.g. `/efi` or `/boot/efi`)
3. Generate config
`sudo grub-mkconfig -o /boot/grub/grub.cfg`
4. (Optional – for dual-boot)
Edit `/etc/default/grub` → set `GRUB_DISABLE_OS_PROBER=false`
Then re-run `sudo grub-mkconfig -o /boot/grub/grub.cfg`
5. Set GRUB as first boot entry (choose **one**):
- UEFI firmware → change boot order (move "GRUB" before "Linux Boot Manager")
- or CLI: `efibootmgr` → note numbers → `sudo efibootmgr -o XXXX,YYYY,...` (put GRUB first)
6. Reboot and verify
7. (Optional – clean up)
`sudo bootctl remove`
`sudo pacman -Rns systemd-boot`
Done.
Offline
Just a side note, in case you didn't know, it is possible to use "both". Well, kind'a. I use both at the same time. systemd-boot for default because it's kind'a smoother easier to edit stuff but I also have a GRUB option which loads stuff like gparted / clonezilla directly from .iso files for recovery / backups. I couldn't find a way to load and run an .iso file that sits on /boot via systemd-boot so that's why I added a GRUB option as well.
I did it this way:
pacman -S grub efibootmgr
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB
nano /etc/grub.d/40_custom
(my custom stuff)
chmod +x /etc/grub.d/40_custom
grub-mkconfig -o /boot/grub/grub.cfg
(this grub-mkconfig is what makes things "stick", so when you edit / add grub.d stuff, you have to run this command to update the changes for you)
nano /boot/loader/entries/grub.conf
title GRUB
efi /EFI/GRUB/grubx64.efi
I didn't add the os-prober, because it seems to work (for me) anyway, I tend to keep things as light and simple as possible. Just installing it on an absolute need to use basis.
ALWAYS take a backup / clone before you mess with this stuff, it's not fun when stuff break.
Last edited by noesoespanol (2026-04-05 23:57:26)
Offline