NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
install/50311: Missing gptmbr.bin on amd64 (& i386) prevents GPT bootable install
>Number: 50311
>Category: install
>Synopsis: Missing gptmbr.bin on amd64 (& i386) prevents GPT bootable install
>Confidential: no
>Severity: serious
>Priority: high
>Responsible: install-manager
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Wed Oct 07 14:00:00 +0000 2015
>Originator: Robert Elz
>Release: NetBSD 7.99.21 (current as of 2015-10-07)
>Organization:
Prince of Songkla University
>Environment:
System: NetBSD andromeda.noi.kre.to 7.99.21 NetBSD 7.99.21 (VBOX64-1.1-20150829) #3: Sun Aug 30 07:16:17 ICT 2015 kre%andromeda.noi.kre.to@localhost:/home/kre/src/current-kernel/usr/src/sys/arch/amd64/compile/VBOX64 amd64
Architecture: x86_64
Machine: amd64
>Description:
I did an amd64 install onto a new system, on which I thought
I'd try doing a pure GPT system setup, using sysinst.
Aside from the sysinst steps to use GPT being a little
counter-intuitive (the method to use isn't as obvious as it
could be) all of that worked - except the resulting system
wasn't bootable.
Cause of that was that the "gpt biosboot" step failed, and that
was because there's no gptmbr.bin on the ramdisk
>How-To-Repeat:
Do an amd64 install of current and format a new empty disk
(no boot info previously installed) as GPT. Complete the
install. If you're observant you'll see the "gpt biosboot"
failure error message flash past. Attempt to reboot.
>Fix:
The workaround for anyone who is in this situation is to
finish the sysinst install procedure, then when given the
opportunity, get a shell, mount the newly installed root
(and /usr if you separated them) and re-run the
gpt biosboot using the gptmbr.bin that will have been
installed in /usr/mdec on the newly installed system
To prevent this happening in the future, in src/distrib/amd64 ...
Index: ramdisks/common/list.ramdisk
===================================================================
RCS file: /cvsroot/NetBSD/src/distrib/amd64/ramdisks/common/list.ramdisk,v
retrieving revision 1.19
diff -u -r1.19 list.ramdisk
--- ramdisks/common/list.ramdisk 10 Aug 2014 20:07:41 -0000 1.19
+++ ramdisks/common/list.ramdisk 7 Oct 2015 13:52:58 -0000
@@ -83,6 +83,7 @@
COPY ${DESTDIR}/usr/mdec/mbr usr/mdec/mbr
COPY ${DESTDIR}/usr/mdec/mbr_ext usr/mdec/mbr_ext
COPY ${DESTDIR}/usr/mdec/mbr_bootsel usr/mdec/mbr_bootsel
+COPY ${DESTDIR}/usr/mdec/gptmbr.bin usr/mdec/gptmbr.bin
# and the boot script
COPY ${CURDIR}/../common/dot.profile .profile
I believe the same is required in src/distrib/i386 but I
haven't tested that one to be certain.
I have yet to build and test a system with this change to
know for certain that it is correct and sufficient, and
doesn't cause the size of the ramdisk to exceed limits,
but I am fairly confident that it is what is needed.
(I will append confirmation once I know.)
Home |
Main Index |
Thread Index |
Old Index