You are not logged in.
I am currently learning how to install Arch with my UEFI set-up. I was wondering if there is any way to practice the installation process without actually using the set-up directly? I just want to get this install down so I don't hit an error and then have to install another OS to figure out what the error means and what to do about it.
Offline
Virtual machine?
Offline
But will you be able to create an Arch with the intention of being booted with UEFI within a virtual machine?
Offline
Offline
But will you be able to create an Arch with the intention of being booted with UEFI within a virtual machine?
I've done it many times with various Linux distributions; however, there are likely to be differences compared to the "real thing." Under VirtualBox, for instance, the efibootmgr program is ineffective -- it will claim to have worked, but the settings you change will be lost when you "reboot" the virtual machine. Thus, you'll need to either install your boot program as EFI/BOOT/bootx64.efi or use bcfg from a version 2 EFI shell to register your boot program. There can also be bugs on specific computers' EFI implementations that will cause complications, and of course it's unlikely that VirtualBox's EFI will have exactly the same problems.
Overall, it may well be worth trying an EFI installation under VirtualBox to start the learning process, but you shouldn't assume that it will work in exactly the same way on real hardware.
Offline
it will claim to have worked, but the settings you change will be lost when you "reboot" the virtual machine.
Don't reboot with the window close button... Run one of these from the console or from a terminal:
# reboot
# poweroff
I have made a personal commitment not to reply in topics that start with a lowercase letter. Proper grammar and punctuation is a sign of respect, and if you do not show any, you will NOT receive any help (at least not from me).
Offline
z_Zelman wrote:But will you be able to create an Arch with the intention of being booted with UEFI within a virtual machine?
I've done it many times with various Linux distributions; however, there are likely to be differences compared to the "real thing." Under VirtualBox, for instance, the efibootmgr program is ineffective -- it will claim to have worked, but the settings you change will be lost when you "reboot" the virtual machine. Thus, you'll need to either install your boot program as EFI/BOOT/bootx64.efi or use bcfg from a version 2 EFI shell to register your boot program.
I do not fully agree with this, My grubx64.efi is located at '/boot/efi/EFI/arch' When I reboot, startup.nsh will start, just type 'exit'. Now your Vbox BIOS shows up.
Go to your 'Boot Maintenance Manager' and click 'Boot Options' , now you hit 'Add Boot Option'
Now you should be able to add your 'EFI' app to the bootmenu! After a restart you will not be able to just hit the EFI loader, you need to get past 'startup.nsh' type 'exit' or hit 'enter'.
You are now able to select your saved entry and start your EFI boot-loader. So hit 'Boot Manager, and there it is , your saved EFI entry!
Hope this helps!)
Offline
srs5694 wrote:it will claim to have worked, but the settings you change will be lost when you "reboot" the virtual machine.
Don't reboot with the window close button... Run one of these from the console or from a terminal:
# reboot # poweroff
I do, and the efibootmgr entries get lost. Perhaps this is a difference related to specific installation options or VirtualBox versions, though. (I'm currently using 4.1.22 under Gentoo, but I've used older versions in the past.)
My grubx64.efi is located at '/boot/efi/EFI/arch' When I reboot, startup.nsh will start, just type 'exit'. Now your Vbox BIOS shows up.
Go to your 'Boot Maintenance Manager' and click 'Boot Options' , now you hit 'Add Boot Option'
Now you should be able to add your 'EFI' app to the bootmenu! After a restart you will not be able to just hit the EFI loader, you need to get past 'startup.nsh' type 'exit' or hit 'enter'.
You are now able to select your saved entry and start your EFI boot-loader. So hit 'Boot Manager, and there it is , your saved EFI entry!
That's awfully complex and tedious to deal with. Renaming the boot loader file causes it to launch directly, which is much simpler.
Offline
That's awfully complex and tedious to deal with.
You think so?, you only have to do it once! After that you can choose that loader whenever you want.
Sorry, I don't see that complexness.
Offline
srs5694 wrote:qinohe wrote:After a restart you will not be able to just hit the EFI loader, you need to get past 'startup.nsh' type 'exit' or hit 'enter'.
You are now able to select your saved entry and start your EFI boot-loader. So hit 'Boot Manager, and there it is , your saved EFI entry!That's awfully complex and tedious to deal with.
You think so?, you only have to do it once! After that you can choose that loader whenever you want.
Sorry, I don't see that complexness.
As I understand your procedure, your need to:
Go through a complex procedure involving the EFI shell and the user interface in the EFI "firmware" in VirtualBox.
On every boot, interact with the VirtualBox EFI user interface to select the boot manager.
When using EFI/BOOT/bootx64.efi, OTOH, you must:
Rename one directory and one file.
"Power on" the virtual machine to get to the boot manager.
Both aspects are easier. Granted, the first is a one-time deal, and if mucking about with the VirtualBox EFI user interface made it easier to start the boot loader, it might be worth it; but that's not the case. Even if I've misunderstood and your procedure boots directly into your boot program, it's more hassle to set up with no advantage that I can see.
Offline
When I installed ArchLinux under my EFI virtual machine, I had to go through a procedure involving EFI shell. And I had to do it every time if I had not set the next time boot... Poweroff always reset EFI shell.
There is a mistake in point 7 of Install and configure a bootloader, For UEFI motherboards, EFISTUB section of the Unofficial Beginners' Guide. The refind_x64.efi file should be renamed to bootx64.efi, and NOT to boot_x64.efi:
# cp -r /boot/efi/EFI/refind/ /boot/efi/EFI/boot/
# mv /boot/efi/EFI/boot/refind_x64.efi /boot/efi/EFI/boot/bootx64.efi
When I removed the underscore "_" from the name, my virtual machine began to boot normally.
qinohe apparently made his installation using grubx64.efi. That might be why he had to go through the EFI shell procedure only once, I'm guessing.
Offline
I just want to get this install down so I don't hit an error and then have to install another OS to figure out what the error means and what to do about it.
Sounds like someone's not familiar with how Live CDs work. I hit a snag while setting up UEFI with my latest install; to fix it, I booted into the Arch Live CD and used elinks to check the wiki.
Offline
As I understand your procedure, your need to:
Go through a complex procedure involving the EFI shell and the user interface in the EFI "firmware" in VirtualBox.
On every boot, interact with the VirtualBox EFI user interface to select the boot manager.
Well 'The usual Archer' can handle this I presume.)
Your right about that and I have not created a workaround,, but since I only reboot for kernel updates...
When using EFI/BOOT/bootx64.efi, OTOH, you must:
Rename one directory and one file.
"Power on" the virtual machine to get to the boot manager.
Both aspects are easier. Granted, the first is a one-time deal, and if mucking about with the VirtualBox EFI user interface made it easier to start the boot loader, it might be worth it; but that's not the case. Even if I've misunderstood and your procedure boots directly into your boot program, it's more hassle to set up with no advantage that I can see.
I know , VirtualBox is following UEFI standards, I think I just wanted to stay close to Arch standard.
The method I use could be a 'time saver', valuable to some people, not able to get your method to work, but maybe yours is easier all together!
Offline
When I installed ArchLinux under my EFI virtual machine, I had to go through a procedure involving EFI shell. And I had to do it every time if I had not set the next time boot... Poweroff always reset EFI shell.
There is a mistake in point 7 of Install and configure a bootloader, For UEFI motherboards, EFISTUB section of the Unofficial Beginners' Guide. The refind_x64.efi file should be renamed to bootx64.efi, and NOT to boot_x64.efi:
# cp -r /boot/efi/EFI/refind/ /boot/efi/EFI/boot/ # mv /boot/efi/EFI/boot/refind_x64.efi /boot/efi/EFI/boot/bootx64.efi
When I removed the underscore "_" from the name, my virtual machine began to boot normally.
qinohe apparently made his installation using grubx64.efi. That might be why he had to go through the EFI shell procedure only once, I'm guessing.
Yes, I named my EFI app grubx64.efi, but you can find that!
Have you tried this yourself?, reboot and see if EFI boots the OS without intervention!?
If so I will start using rEFInd on VirtualBox!
Offline
dif wrote:There is a mistake in point 7 of Install and configure a bootloader, For UEFI motherboards, EFISTUB section of the Unofficial Beginners' Guide. The refind_x64.efi file should be renamed to bootx64.efi, and NOT to boot_x64.efi:
# cp -r /boot/efi/EFI/refind/ /boot/efi/EFI/boot/ # mv /boot/efi/EFI/boot/refind_x64.efi /boot/efi/EFI/boot/bootx64.efi
Yes, I named my EFI app grubx64.efi, but you can find that!
Have you tried this yourself?, reboot and see if EFI boots the OS without intervention!?
If so I will start using rEFInd on VirtualBox!
Under any x86-64 EFI, the fallback boot loader name is EFI/BOOT/bootx64.efi. No other filename in the EFI/BOOT directory has any sort of privileged status, so a file called EFI/BOOT/grubx64.efi or EFI/BOOT/boot_x64.efi will only boot if it's launched manually or if it's added to the NVRAM settings. (Note, however, that as FAT is case-insensitive, there are a plethora of possible case variations on that filename!)
Offline