You are not logged in.
So I followed all the instructions given at the Arch Installation Wiki page and everything went fine. However, I'm can't see my Arch system from the Systemd-Boot menu.
Details:- The Systemd-Boot menu shows the following options:
Windows Boot Manager (<-- Windows installation, which I can currently boot)
EFI Default Loader (<-- under which 2 options: WinBootMgr and BIOS menu again)
Firmware Interface (<-- which is the BIOS menu)
When I boot using the LiveUSB stick, I can well mount the Arch partition (ext4) (base installation and tweaks complete after having chrooted) at /mnt
and the EFI partition (the esp) at /mnt/boot.
Directories under /mnt/boot :
|
|-EFI--|
| |-Boot (A .efi file present)
| |
| |-Microsoft (A .efi file and many other things present)
| |
| |-systemd (A .efi file present)
|
|-loader--|
|-entries (Empty directory)
|
|-loader.conf (contents of which is: #timeout 3
default 1ad65d1cb05646b5b151b6908c985588-* )
I had created the systemd boot (after exiting out of chroot) by using the following command:
> bootctl --path=/mnt/boot install
I guess I have to create some configuration files under /mnt/boot/loader/entries and also copy the 3 files (vmlinuz-linux, initramfs-linux.img, initramfs-linux-fallback.img)
which I have lying about in the /mnt/boot directory (before I mount the EFI partition there) to somewhere like /mnt/boot/EFI/???. Both the Arch-wiki on Dual Booting and the one on
systemd-boot did not clarify how to make the boot menu entries manually.
-------------------------------------------------------------------------------------------------------------------------
SOLUTION: Make the arch.conf file in the esp (as stated in the wiki) as per @V1del reply.
-------------------------------------------------------------------------------------------------------------------------
Last edited by forty-two (2017-09-28 13:53:35)
Offline
I think the 'efibootmgr' part is missing.
sys2064
Offline
efibootmgr has nothing to do with this
@forty-two
You haven't yet defined an entry for Arch Linux https://wiki.archlinux.org/index.php/Sy … figuration (Don't stop after the basic config snippet, read on to the defining a boot entry paragraph)
And you should've mounted the EFI partition to /mnt/boot before installing the system with pacstrap. You can either copy the vmlinux files you have lying about now to the properly mounted /boot (copy them elsewhere, then mount /boot, then move them there) or reinstall the linux package after an arch-chroot and veryfing that your ESP is correctly mounted on /boot (you don't explicitly need to mount it to /boot/EFI veryfing that it is mounted on /boot and then installing the linux package should correctly place the vmlinuz files)
Last edited by V1del (2017-06-30 14:08:54)
Offline
I had created the systemd boot using the following command:
> bootctl --path=/mnt/boot install
When you are still using arch-chroot and using the command above, the path does not include /mnt. Use this, --path=/boot install
In the arch-chroot environment the ESP is seen as being mounted to /boot in your case.
Simple and Open
Offline
forty-two wrote:I had created the systemd boot using the following command:
> bootctl --path=/mnt/boot installWhen you are still using arch-chroot and using the command above, the path does not include /mnt. Use this, --path=/boot install
In the arch-chroot environment the ESP is seen as being mounted to /boot in your case.
Well, no. I executed the bootctl command after having exited out of chroot. So, that part was correct.
Offline
efibootmgr has nothing to do with this
@forty-two
You haven't yet defined an entry for Arch Linux https://wiki.archlinux.org/index.php/Sy … figuration (Don't stop after the basic config snippet, read on to the defining a boot entry paragraph)And you should've mounted the EFI partition to /mnt/boot before installing the system with pacstrap. You can either copy the vmlinux files you have lying about now to the properly mounted /boot (copy them elsewhere, then mount /boot, then move them there) or reinstall the linux package after an arch-chroot and veryfing that your ESP is correctly mounted on /boot (you don't explicitly need to mount it to /boot/EFI veryfing that it is mounted on /boot and then installing the linux package should correctly place the vmlinuz files)
Oh, I got it. So, do I dump the three files at the root of esp/EFI or put them in esp/EFI/Arch ?
Thanks for pointing out that we should mount /boot first and then pacstrap.
I'll post back after I've tried putiing the files in esp/EFI/Arch and made an entry as outlined in the wiki.
Last edited by forty-two (2017-07-02 04:11:53)
Offline
I think the 'efibootmgr' part is missing.
I suppose that's for GRUB, which does not do automatic os detection without efibootmgr and os-prober.
Offline
No, its for configuring/validating the efi boot entries in nvram.
https://wiki.gentoo.org/wiki/Efibootmgr
Usually these entries are created by grub-install or bootctl automatically. Just run the binary and check the boot entries manually to see if this stage is ok.
Edit: If it boots to systemd it is ok.
Last edited by Maniaxx (2017-07-02 12:33:30)
sys2064
Offline
Don't put them into an EFI subdirectory, just put them at the root of your /boot (after having it mounted) if you put them into a subdirectory you will have to define the paths in the entries confs specifically.
Offline
Blasphemist wrote:forty-two wrote:I had created the systemd boot using the following command:
> bootctl --path=/mnt/boot installWhen you are still using arch-chroot and using the command above, the path does not include /mnt. Use this, --path=/boot install
In the arch-chroot environment the ESP is seen as being mounted to /boot in your case.
Well, no. I executed the bootctl command after having exited out of chroot. So, that part was correct.
The installation guide clearly describes being in the arch-chroot environment when installing the boot loader. Seems like unnecessary complications not to do that.
Simple and Open
Offline