You are not logged in.

#26 2013-04-01 15:37:47

sidneyk
Member
From: Bonner Springs, KS. USA
Registered: 2011-04-22
Posts: 129

Re: [~solved] dosfsck: EFI overwritten long file name, not auto-correcting

WonderWoofy wrote:

When I first set up UEFI on my machine, I chose to go the route of a direct efibootmgr entry (you know the f*cked up looking one with the double pipe conversion from ascii to unicode).  For some reason, that version of my firmware would not write that correctly if I kept everything in the proper \EFI\arch directory, as it would truncate part of that path.  So I had to keep everything on /boot just as you have done here sidneyk, and it was super simple and easy since Arch was my only OS on the machine.

I now keep things in the \EFI directories so that I can keep it more organized, as I have since put other things on (and subsequently taken them off).  It also allows for me to keep numerous bootloaders and boot managers in the ESP all w/o making the root of it look all super crazy and disorganized. 

To make things update correctly though is rather simple.  I just use one path/service per kernel.  When it is detected that it is written at /boot it moves it appending .efi,  Then I have set mkinitcpio to write the initramfs according not to what is at /boot, but /boot/EFI/arch/*, and also to put the initramfs directly there.  By doing this, if for some reason the path/service fails, so too will the creation of the initramfs, as it will then try to build with modules that are not there.  This should be noticeable in my opinion, but if I fail to notice for some reason, I at least have the correct kernel/initramfs to get into the initramfs shell (ash), and quite probably the rescue.target.

Yeah, I was doing the systemd thing at first and keeping everything in it's 'proper' place in the /EFI and it worked fine. I know I could have also created a custom hook for mkinitcpio that wouldn't involve any running services or daemons to accomplish the copying. I wanted though to get it to work with the current Arch default way of doing things and reconfigure just rEFInd and, of course, my fstab. Granted, I was starting with an already installed and confirmed working system and after I learned more about UEFI booting. Right now, the root of my EFI partition is my /boot directory and doesn't look much different than it did the other way, just minus the /efi directory and the /EFI/arch directories and with an added refind_linux.conf. No custom hooks, no custom service/path units and the only configs I'll have to watch are rEFInd's. I like rEFInd because it gives a nice graphical menu, defaulting to Windows, that my wife can understand when she needs to reboot or anything. No pressing F8 repeatedly during bootup and only one arrow and enter for me to get to Arch.

Offline

Board footer

Powered by FluxBB