You are not logged in.

#1 2020-03-20 20:28:39

agentsix
Member
Registered: 2020-03-20
Posts: 4

Does a bind mount require a copy first? and other slow terminal issue

I am attempting to install arch with /efi as my mount point. However I believe that I am having an issue with the bind mount in my install.

Reasoning for using /efi:

One can use /boot but that keeps the boot loader files on the efi partition which sounds like it isn't as desirable. The wiki also seems to switch between recommending /efi and /boot so I figure it shouldn't be an issue as well as https://wiki.archlinux.org/index.php/EF … unt_points says that typical mount points are /boot and /efi

Current State

My install works correctly when I manually copy the boot files from /boot to /efi/EFI/arch but when I use a bind mount as described in the wiki: https://wiki.archlinux.org/index.php/EF … bind_mount

mount --bind /efi/EFI/arch /boot

and add

/efi/EFI/arch /boot none defaults,bind 0 0

to /etc/fstab the boot manager files don't show up if I run ls /efi/EFI/arch
However if I exit the chroot and then shutdown and remove the installation usb and start up I just boot into (what I assume is grub) with the only option of:

reboot into firmware interface

From looking at the bind syntax it looks like maybe the /boot and /efi/EFI/arch are backwards based on what the manpage for mount says:

Mount Manpage wrote:

mount --bind olddir newdir

    or shortoption

So by that shouldn't it be

mount --bind /boot /efi/EFI/arch

since we want to have the contents of /boot appear at /efi/EFI/arch?
When I do switch the order of /boot and /efi/EFI/arch then the files do show up at /efi/EFI/arch while I am still in the arch-chroot but when I reboot I still get the reboot into firmware interface error

Rebooting into live usb to check file structure to check if files are still there

When I reboot into the arch live usb that the install is done with and run

 mount /dev/sda3 /mnt
mount /dev/sda1 /mnt/efi
arch-chroot /mnt

I check /efi/EFI/arch and there is nothing there. The files are still in /boot So they just are not showing up in /efi/EFI/arch So I assume that only the manual bind command is working and that the additional line in /etc/fstab is not working? (since the mount --bind command doesn't persist across reboots?


Conclusion

The rest of the install seems to be working correctly since copying the boot manager files manually from /boot to /efi/EFI/arch works. However from my failed previous install just copying the files manually requires that you keep copying the boot manager files everytime the kernel is updated since the new boot files are put into /boot and the system is setup to look in /efi/EFI/arch but needs the new boot manager files to boot properly

At this point figuring out what is the issue with using /efi/EFI/arch is bugging me so while I could switch to just using /boot I want to understand what I am doing wrong with my current configuration

TL;DR

I have no idea why the bind command isn't working I didn't see anything I am missing in the wiki about setting up the boot loader and using the bind mount. The boot loader files are not showing up at restart where the entry file expects them to be even though the files should show up with a bind mount.



Other issue
Slow console during install

Sometimes I run commands and it takes forever for them to do anything. For example I will check the disks with fdisk -l and it will take 20+ seconds for the command to have any output but other times it is basically instantaneous. It doesn't seem to be any particular command it just happens randomly. I can find several resources for slow tty after install but none for during install. I figured I would try what was on this thread: https://bbs.archlinux.org/viewtopic.php?id=242433 which seems to recommend setting vga=off however as the wiki says: https://wiki.archlinux.org/index.php/GR … figuration vga is deprecated so I instead searched /etc/default/grub and uncommented

GRUB_TERMINAL_OUTPUT=console

to disable graphical terminal and it seems to be working however wanted to check if that is indeed the way to fix the issue. Or if that fix will cause other problems I don't know about yet.

TL;DR:

During install some commands are very slow (>20 seconds) and in an attempt to fix it uncommented GRUB_TERMINAL_OUTPUT=console which seemed to work but unsure if that really fixed the issue and if that will cause other unforseen issues

edit

Apparently my fix of uncommenting GRUB_TERMINAL_OUTPUT=console did not work as I still encounter the issue, at this point unsure how to fix that issue. Is it just something I need to put up with?

Last edited by agentsix (2020-03-20 20:35:01)

Offline

#2 2020-03-22 21:01:12

loqs
Member
Registered: 2014-03-06
Posts: 17,194

Re: Does a bind mount require a copy first? and other slow terminal issue

I would suggest not using the bind mount in your use case it is just adding complexity.

mount --bind /efi/EFI/arch /boot

makes the contents of /efi/EFI/arch available under /boot so when a kernel package installs a kernel to /boot it would actually be stored in the directory EFI/arch of the ESP
This would only be needed if /boot is not the ESP and the bootloader could only read files on the ESP which is not the case for grub.
When installing grub you specify the esp which would be /boot or /efi.

Offline

Board footer

Powered by FluxBB