Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot boot from rear iso uefi #1426

Closed
cocampbe opened this issue Jul 20, 2017 · 12 comments
Closed

Cannot boot from rear iso uefi #1426

cocampbe opened this issue Jul 20, 2017 · 12 comments

Comments

@cocampbe
Copy link

  • rear version (/usr/sbin/rear -V):

Relax-and-Recover 1.17.2 / Git

  • OS version (cat /etc/rear/os.conf or lsb_release -a):

Oracle Linux Server release 7.3

  • rear configuration files (cat /etc/rear/site.conf or cat /etc/rear/local.conf):

OUTPUT=ISO
BACKUP=NETFS
BACKUP_URL="nfs://server/rear/"
NETFS_KEEP_OLD_BACKUP_COPY=1
ONLY_INCLUDE_VG=( vg00 )

  • Are you using legacy BIOS or UEFI boot?

UEFI

  • Brief description of the issue:

We are testing rear recovery on new HP Synergy compute nodes. They are setup using UEFI. The process to make the recovery is fine. When booting from the ISO, we get the following output.

Failed to open \EFI\BOOT\grubx64.efi - Not Found
Failed to load image \EFI\BOOT\grubx64.efi: Not Found
start_image() returned Not Found

This makes sense since the iso image does not contain that file. It does contain BOOTx64.efi. I have not tried a newer version on rear as I want to stick with the one that comes with the distro. I have oracle support, so I should be able to take any info and supply it to them. They could then update the package.

I have noticed that when I run mkbackup with verbosity, I see this in the output.

Using UEFI Boot Loader for Linux (USING_UEFI_BOOTLOADER=1)

So I can only assume it is not necessary in the local.conf file.

  • Work-around, if any:
@cocampbe
Copy link
Author

Adding log

@cocampbe
Copy link
Author

rear-host.zip

@gozora
Copy link
Member

gozora commented Jul 20, 2017

Hello @cocampbe,

There have been lots of changes in ReaRs UEFI code since 1.17.2 so I don't even dare to guess what can be wrong in your case.
My best advice to you would be to update to version 2.1 or if you are using secure boot to HEAD of ReaRs master branch.

V.

@cocampbe
Copy link
Author

@gozora

I was going to try that, but since I have oracle support, I figured I would stay with the version they supply with the distro. I will open a case with them. It was worth a shot.

@gozora
Copy link
Member

gozora commented Jul 20, 2017

Maybe something that might help you.
When booting, try to escape to EFI shell, cd to directory EFI/BOOT on your ISO and launch BOOTX64.efi manually.

V.

@cocampbe
Copy link
Author

@gozora

I did try that. It prodices this output when executed:

Failed to open \EFI\BOOT\grubx64.efi - Not Found
Failed to load image \EFI\BOOT\grubx64.efi: Not Found
start_image() returned Not Found

I am not very familiar with UEFI from this perspective. I ran the mkresuce with debugging. I noticed that shim.efi was copied to BOOTX64.efi. That seemed strange to me, but when you don't know what your looking for it's all pretty strange. ;)

@cocampbe
Copy link
Author

@gozora

I am going to go ahead and try the latest rear. There are a few things that do not seem correct. I noticed that the grub.cfg that is generated is not using linuxefi, nor initrdefi. That does not look correct.

@cocampbe
Copy link
Author

I just made a build of the latest git. It failed creating the backup. Which is fine at this point. I did notice that the verbosity is much better in the latest release. I was able to see the efi file that was going to be copied, and it wasn't the shim.efi. I beleive the correct file is /boot/efi/EFI/redhat/grubx64.efi. I am going to edit the file /usr/share/rear/output/ISO/Linux-i386/25_populate_efibootimg.sh and see what happens now.

If you don't mind, I would like to use this issue to keep track of my progress. Maybe it will help someone else. If not, please let me know. I will close the issue and track it under my repo.

@gozora
Copy link
Member

gozora commented Jul 20, 2017

@carragom take a look on defaul.conf and search for UEFI_BOOTLOADER. If you set this variable to whatever *.efi booloader you are using, it should disable guess work ReaR is doing to find right files to copy.

V

@cocampbe
Copy link
Author

Ah, that makes sense. I will do that. Thanks.

@cocampbe
Copy link
Author

@gozora

That resolved my issue. Now I just don't understand the menu entries for "secure boot" vs "no secure boot". The "secure boot" entry uses linuxefi and initrdefi, but the "no secure boot entry" uses just linux and initrd. I don't think that matters, why should both be using the *efi commands.

Thanks for your assistance.

@gozora
Copy link
Member

gozora commented Jul 20, 2017

That menu entries exists for compatibily reasons.
You would not believe how variable can UEFI boot be.
To put it simple, if one of the entries doesnt work you can try anther one ;-).

V.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants