|
From: | Vyacheslav Gonakhchyan |
Subject: | Re: Grub2 chainloader bootmgfw.efi not working |
Date: | Thu, 17 Sep 2015 00:11:18 +0300 |
16.09.2015 10:04, Vyacheslav Gonakhchyan пишет:Are you sure it actually saves the last sector? File you attached looks identical to the very first sector. If it is indeed the last one, it may confuse firmware (last sector must contain copy of GPT header but GRUB never checked it).
I boot using option "usb". It goes into grub rescue mode. Maybe it reads
devices from grubx64.efi. Other boot options "arch", "Test" don't work and
give me black screen with blinking cursor.
efibootmgr -v
BootCurrent: 0002
Timeout: 3 seconds
BootOrder: 0008,0006,0003,0001,0000,0004,0005,0002
Boot0000* CD/DVD Drive BBS(CDROM,,0x0)
Boot0001* Hard Drive BBS(HD,,0x0)
Boot0002* usb
PciRoot(0x0)/Pci(0x12,0x2)/USB(5,0)/USB(1,0)/File(\EFI\arch\grubx64.efi)
Boot0003* Test
HD(7,GPT,c92e4c3a-00d8-41cf-81f4-3d3c5a8e86aa,0x3a282000,0x104000)/File(\EFI\Microsoft\Boot\bootmgfw.efi)
Boot0004* UEFI: FAT File System
PciRoot(0x0)/Pci(0x12,0x2)/USB(5,0)/USB(1,0)
Boot0005* Removable Drive BBS(Floppy,,0x0)SPCC USB Flash Memory1.00.
Boot0006* arch
HD(7,GPT,c92e4c3a-00d8-41cf-81f4-3d3c5a8e86aa,0x3a282000,0x104000)/File(\EFI\arch\grubx64.efi)
Boot0008* Windows Boot Manager
HD(7,GPT,c92e4c3a-00d8-41cf-81f4-3d3c5a8e86aa,0x3a282000,0x104000)/File(\EFI\Microsoft\Boot\bootmgfw.efi)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}....................
is disk 512b or 4K?cat /sys/block/sda/queue/hw_sector_size prints 512
Attached output from
dd if=/dev/sda count=1 bs=1024 of=~/sda_1k.out
ddrescue --reverse --size=512 /dev/sda ~/sda_last.out
Otherwise header looks fine. I assume partition table itself should be OK as both grub and Linux accept it.
On Wed, Sep 16, 2015 at 6:24 AM, Andrei Borzenkov <address@hidden>
wrote:
15.09.2015 22:40, Vyacheslav Gonakhchyan пишет:
map -v
Mapping table
FS0: Alias(s):F7f0b0:;BLK5:
PciRoot(0x0)/Pci(0x12,0x2)/USB(0x5,0x0)/USB(0x1,0x0)
Handle: [C5]
Media Type: Unknown
Removable: Yes
Current Dir: FS0:
BLK0: Alias(s):
PciRoot(0x0)/Pci(0x11,0x0)/Sata(0x0,0x0)
Handle: [CC]
Media Type: Unknown
Removable: No
Current Dir: BLK0:
BLK2: Alias(s):
PciRoot(0x0)/Pci(0x11,0x0)/Sata(0x1,0x0)
Handle: [CD]
Media Type: Unknown
Removable: No
Current Dir: BLK2:
BLK4: Alias(s):
PciRoot(0x0)/Pci(0x11,0x0)/Sata(0x2,0x0)
Handle: [CE]
Media Type: Unknown
Removable: No
Current Dir: BLK4:
BLK1: Alias(s):
PciRoot(0x0)/Pci(0x11,0x0)/Sata(0x0,0x0)/HD(1,MBR,0x91E11F57,0x1,0x3A38602F)
Handle: [CF]
Media Type: HardDisk
Removable: No
Current Dir: BLK1:
BLK3: Alias(s):
PciRoot(0x0)/Pci(0x11,0x0)/Sata(0x1,0x0)/HD(1,MBR,0x00040B8F,0x3F,0x74705982)
Handle: [D0]
Media Type: HardDisk
Removable: No
Current Dir: BLK3:
So everything is bad because my MB(ASUS *M5A97*) suddenly cannot discover
gpt partitions?
This explains GRUB behavior. But now I'm extremely confused - can your
system actually boot? Where does it boot from? Could you show "efibootmgr
-v" output?
I have not said it in first mail but this boot situation
started after I tried to resize one partition in Acronis Disk Director 12So does GRUB. Could you attach the first 1K and the last sector from this
and it failed. Maybe it did something to gpt tables. But archlinux can
work
with them so it's strange.
disk? And, BTW, is disk 512b or 4K?
On Tue, Sep 15, 2015 at 1:14 PM, Andrei Borzenkov <address@hidden>
wrote:
On Tue, Sep 15, 2015 at 12:28 PM, Vyacheslav Gonakhchyan
<address@hidden> wrote:
Attached devtree output. Don't have serial console so provided imagelinks.
Well, you firmware sees two partitions - (hd2,msdos2) and what is
Do you see entry corresponding to hd1,gpt7?
Only HD entries I see:
http://postimg.org/image/5a5n8yylv/
Entire lsefi output:
http://postimg.org/gallery/206hl6qfo/fcc52503/?code=fcc52503
ls -l output:
http://postimg.org/image/ntoj0d7lf/
http://postimg.org/image/666q25xo3/
probably protective MBR on hd1. It does *NOT* show any trace of GPT
partitions on hd1.
Could you please boot EFI Shell and attach output of "map -v" command?
On Tue, Sep 15, 2015 at 6:56 AM, Andrei Borzenkov <address@hidden>
wrote:HD(<partition_number>,<partition_start>,<partition_size>,<partition_signature>,<partmap_type>,<signature_type>)
15.09.2015 01:18, Vyacheslav Gonakhchyan пишет:
Could you please run "lsefi" in GRUB CLI and look for paths ending with
I installed grub-git and efibootmgr-git and reproduced it.
If it matters could not build efivar-git so it's few month behind.
HD(...). It is structured as
Do you see entry corresponding to hd1,gpt7?you
Unless you have serial console you want to do
set pager=1
otherwise it will scroll too fast. Keep in mind that there is no way to
abort output once started you will have to keep paging it until end. If
have serial console, could you attach output as well as "ls -l"?
wrote:
Could you also boot EFI Shell and attach output of "devtree" (you can
redirect to a file on ESP).
On Mon, Sep 14, 2015 at 7:42 PM, Andrei Borzenkov <address@hidden
14.09.2015 15:36, Vyacheslav Gonakhchyan пишет:
$root
My Grub2 is EFI. I use grub-install --target=x86_64-efi
--efi-directory=/boot/efi /dev/sda which calls efibootmgr to load
grubx64.efi into UEFI BIOS.
OK in this case message means that grub cannot find EFI handle for
(i.e. in your case - partition gpt7). GRUB itself needs just disk
referenceit
and handles partitions internally. But when launching external binary
wants to pass it reference to device where it is located which means
it
must be exported and accessible by firmware.
The first step would be to try to reproduce it using upstream
sources.
echo $grub_cpu $grub_platform
address@hidden>
Sorry, can only check it later. I'm guessing x86_64, efi-64...
On Mon, Sep 14, 2015 at 4:11 PM, Andrei Borzenkov <
wrote:
On Mon, Sep 14, 2015 at 2:36 PM, Vyacheslav Gonakhchyan
<address@hidden> wrote:
Hi, everyone!
am
I have dual boot config Archlinux/Windows7 and latest packages. I
everybooted
into grub rescue mode. Or use command line. I want to tell Grub2 to
loadgrub_platform?
Windows Boot Loader bootmgfw.efi. Basically grub2 refuses to do it
with
error "invalid root device".
Steps to reproduce:
set root=(hd1,gpt7)
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
Screen is flashing with "invalid root device".
Is your grub BIOS or EFI? What are values for grub_cpu and
echo $grub_cpu $grub_platform
So grub2 finds bootmgfw.efi but cannot give it control. I tried
other
hd1,gpt combination to no avail. I also tried setting root to one
device
and loading bootmgfw.efi from another device(hd1,gpt7).
It's strange because I can load this file from shell
(shellx64.efi)
within
UEFI BIOS without error. Any advice is appreciated.
Regards,
Viacheslav
_______________________________________________
Help-grub mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/help-grub
sda_last_512.out
Description: Binary data
[Prev in Thread] | Current Thread | [Next in Thread] |