this post was submitted on 18 Aug 2023
6 points (100.0% liked)

Arch Linux

7609 readers
29 users here now

The beloved lightweight distro

founded 4 years ago
MODERATORS
 

hy im trying to install arch as the third os on my windows / ubuntu machine and i cant figure it out how to set the grub bootloader i have already read the friendly manual but probably also due to my non native English origins i coudnt find an answer to my question witch is during the arch install should i reinstall grub with grub-install ? i would prefer to keep the old (ubuntu) one also because its already customized but unfortunately i cant...if i dont install it i dont have the directory /boot/grub in witch i should place the grub.conf file so should i just create this directory ? i have tried with os-prober correctly activated to generate a new grub.conf but it doesnt pick up the arch install .., what are the files i must have to make grub recognize those partitions as a new os to witch assign a new boot entry ..

you are viewing a single comment's thread
view the rest of the comments
[โ€“] mectx02@lemmy.world 3 points 1 year ago (1 children)

If you're running under UEFI, GRUB typically installs a bootx64.efi file in the EFI partition (typically under its own little GRUB folder), so that when your computer boots up, the BIOS/UEFI can point to that file and start GRUB, which will then look at its configuration file to find all the preconfigured bootable operating systems that it knows about. BIOS is a little bit different, but the premise is the same - a small executable is placed somewhere that the BIOS can find and execute to launch your OS' bootloader.

All os-prober does is look at operating systems that are already mounted and adds them to the configuration file. If a system isn't mounted, then os-prober (and by extension, GRUB, since the grub.cfg file is where all the OS options are placed) won't know about it.

Assuming that you have your fstab file for Archlinux configured correctly (where your EFI partition is mounted under a reasonable directory, such as /boot/efi), you can boot into Ubuntu, mount your Archlinux partion under Ubuntu temporarily, and run sudo grub-mkconfig -o /boot/grub/grub.cfg under Ubuntu to generate the necessary boot option for Archlinux.

You can install the GRUB package under Archlinux, but there's no need to install the bootx64.efi file (from sudo grub-install) a second time since that file already exists. It would mostly be used for keeping your grub.cfg up to date. The theming can probably be copied over from Ubuntu's configuration (but I'm not sure of where it is off the top of my head).

[โ€“] DNOS@reddthat.com 0 points 1 year ago

Thanks I always thought ther was a grub for each os and they will recognize each other ... Following an other user advices I have added a separate /boot partition to Ubuntu but eventhow I have added the line in the fatab on boot it doesn't mount properly so I have to manually mount it from the recovery mode... if I select to mount it on boot from the GUI (gnome-disks) it adds a couple of lines in the file /run/systems/generator/boot.mount but nothing changes ...can u confirm me that this file is not consulted on boot so its not relevant ? So should I mount the /boot/EFI (already mounted) ,/ , /home and /boot (already mounted) on Ubuntu before updating grub ? Doesn't this tell to mount the arch os when I boot ubuntu ? .... I have just realized could the problem be in the fact that during the arch install I have followed a tutorial which have told me to create a /boot /EFI directory on witch I should mount the EFI partition while in Ubuntu the EFI partition is mounted in /boot/efi that could defenetly be it ... how should I proceed to fix it remove the EFI directory with all the stuff there's in it and mount it on /boot/efi? Don't wanna mess it up removing stuff is always dangerous... Let me know thanks a lot man I feel like we are getting closer