You are not logged in.

#1 2015-10-26 22:58:44

agent0
Member
From: Russia
Registered: 2014-05-04
Posts: 74
Website

rEFInd cannot boot .efi file from non-ESP partition

Hello!
I cannot configure refind bootloader to make it load .efi file from another partition (not EFI System Partition).

related partitions are:
NAME             FSTYPE      LABEL       Description
sda                                                                             
├─sda2           vfat        SYSTEM_DRV  it is real ESP, which is mounted to /boot
├─sda3           vfat        LRS_ESP     it is another partition, which contains .efi for Lenovo restore app                             

I am trying to configure /boot/EFI/refind/refind.conf. There I have uncommented the following string

windows_recovery_files LRS_ESP:/EFI/Microsoft/Boot/LrsBootmgr.efi

but windows recovery tool did not appeared in the bottom small row while booting. I have installed memtest tool and placed windows_recovery tool between two memtest, just to be sure that it is not displaying:

showtools  memtest, windows_recovery, memtest

Then I tryed just to make a boot entry with needed path and it did not worked too. I tryed even taking a path to quotes:

# with leading '/' and without "
menuentry "Lets launch LRS_ESP:/EFI/Microsoft/Boot/LrsBootmgr.efi" {
	loader LRS_ESP:/EFI/Microsoft/Boot/LrsBootmgr.efi
}

# without leading '/' and without "
menuentry "Lets launch LRS_ESP:EFI/Microsoft/Boot/LrsBootmgr.efi" {
	loader LRS_ESP:EFI/Microsoft/Boot/LrsBootmgr.efi
}

# with leading '/' and with "
menuentry "Lets launch LRS_ESP:/EFI/Boot/bootx64.efi" {
	loader "LRS_ESP:/EFI/Microsoft/Boot/LrsBootmgr.efi"
}

# without leading '/' and with "
menuentry "Lets launch LRS_ESP:/EFI/Boot/bootx64.efi" {
	loader "LRS_ESP:EFI/Microsoft/Boot/LrsBootmgr.efi"
}

Every time I tryed to choose any entry, it said "Invalid loader file, Not found while loading LrsBootmgr.efi"
And then I finally noticed, that rEFInd wants to load LrsBootmgr.efi from SYSTEM_DRV! It ignores "LRS_ESP:" in path?

http://i.imgur.com/KTJ1m3o.png?1
Can anybody please check, that you are not able to load any .efi from another partition? For example, just install memtest tool (link above) and place it somewhere. In my case LRS_ESP partition has FAT32 file system, so I do not need to install additional fs driver for rEFInd.



--  read the Forum Etiquette and only post thumbnails http://wiki.archlinux.org/index.php/For … s_and_code [jwr] --

Offline

#2 2015-10-27 08:48:31

olive
Member
From: Belgium
Registered: 2008-06-22
Posts: 1,490

Re: rEFInd cannot boot .efi file from non-ESP partition

I don't think your configuration file is correct. To boot  a file from another partition, you have to say something like this:

menuentry "ArchLinux" {
volume xxxxxxxxxxxxxxxxxxxxxxx
loader /boot/vmlinuz-linux
options arguments to be passed to the efi loader
}

where the volume option corresponds to the PARTUUID of the corresponding partition.

Last edited by olive (2015-10-27 08:50:51)

Offline

#3 2015-10-27 17:09:32

agent0
Member
From: Russia
Registered: 2014-05-04
Posts: 74
Website

Re: rEFInd cannot boot .efi file from non-ESP partition

olive, thanks for suggestion!
But it did not work also. I also tried to specifi UUID, PARTUUID, and LABEL in volume string, but still nothing... sad At boot screen, rEFInd displays my boot entryes, but says from SYSTEM_DRV (as on screenshot above).

Offline

#4 2015-10-27 17:24:18

olive
Member
From: Belgium
Registered: 2008-06-22
Posts: 1,490

Re: rEFInd cannot boot .efi file from non-ESP partition

Could you post the content of your new refind.conf as well as the output of blkid. I remember having had problems with refind-install. It wants apparently a precise configuration. I had not investigated it further since it is easy to install refind by hand. Just copy the relevant files and add an entry as explained in the wiki. Notice that the from... message of refind is sometimes weird. What actually happen when you try to boot the entry. Also as a general rule you should give as much details as possible when you ask for help. You won't have any help with "It does not work"

Last edited by olive (2015-10-27 17:28:43)

Offline

#5 2015-10-30 02:32:14

agent0
Member
From: Russia
Registered: 2014-05-04
Posts: 74
Website

Re: rEFInd cannot boot .efi file from non-ESP partition

I have found a workaround.
Problem is not my config file (as olive noticed, correct config is with label, but not with ':' in loader), but I think rEFInd itself. I was exploring its strange behavior: sometimes it was displaying icon for windows_recovery (it is tool_windows_rescue.png in icons folder) and at the same time my menuentries were displayed correctly (in my case with "from LRS_ESP"). It was happening when rEFInd was loaded after some other action, for example, after Diagnosting Splash (press Esc then Power button to display splash). But sometimes there were not windows rescue icon and menuentries were with "from SYSTEM_DRV", which means that rEFInd ignores or cannot see another partitions.

And while being loaded in rEFInd incorrectly, I accidently pressed Esc button (it maked refresh) and windows rescue tool appeared! So this is a solution - just press Esc in rEFInd and it will be refreshed with normal recognising another partitions.

So we can conclusion, that rEFInd has a bug at recognising partitions before refresh.

Last edited by agent0 (2015-10-30 18:22:35)

Offline

Board footer

Powered by FluxBB