Upgrading boot from GPT(BIOS) to GPT(UEFI)
Fernando Herrero Carrón
elferdo at gmail.com
Sat Dec 17 08:21:24 UTC 2016
2016-12-16 23:56 GMT+01:00 Warner Losh <imp at bsdimp.com>:
> On Fri, Dec 16, 2016 at 11:00 AM, Dimitry Andric <dim at freebsd.org> wrote:
> > On 16 Dec 2016, at 18:53, Antony Uspensky <uspensky at x-art.ru> wrote:
> >>
> >> On Fri, 16 Dec 2016, Eric van Gyzen wrote:
> >>> On 12/16/2016 11:39, Slawa Olhovchenkov wrote:
> >>>> On Fri, Dec 16, 2016 at 06:08:34PM +0100, Fernando Herrero Carr?n
> wrote:
> >>>>> Hi everyone,
> >>>>>
> >>>>> A few months ago I got myself a new box and I have been happily
> running
> >>>>> FreeBSD on it ever since. I noticed that the boot was not as fast as
> I had
> >>>>> expected and I've realized that, while my disk is GPT partitioned,
> the boot
> >>>>> process is still BIOS based:
> >>>>>
> >>>>> % gpart show
> >>>>> => 34 976773101 ada0 GPT (466G)
> >>>>> 34 6 - free - (3.0K)
> >>>>> 40 1024 1 freebsd-boot (512K)
> >>>>> 1064 984 - free - (492K)
> >>>>> 2048 67108864 2 freebsd-swap (32G)
> >>>>> 67110912 909662208 3 freebsd-zfs (434G)
> >>>>> 976773120 15 - free - (7.5K)
> > ...
> >> I would shrink ada0p1 down to 128K (size of gptzfsboot = 88K now) and
> place efi partition (~800K) on free space between new p1 and p2. No need to
> touch swap partition.
> >
> > Yes, this is almost exactly what I have done on a machine that was
> > originally installed with gptzfsboot on the first partition, which was
> > 512K. Since all the partitions on this SSD were aligned to 1M, I
> > reduced the size of the first partition to 224K, freeing up a hole of
> > exactly 800K for an EFI partition:
> >
> > => 40 976773088 ada0 GPT (466G)
> > 40 2008 - free - (1.0M)
> > 2048 448 1 freebsd-boot (224K)
> > 2496 1600 4 efi (800K)
> > 4096 33554432 2 freebsd-swap (16G)
> > 33558528 943214592 3 freebsd-zfs (450G)
> > 976773120 8 - free - (4.0K)
> >
> > Then I wrote the preformatted boot1.efifat image to it, using: gpart
> > bootcode -p /boot/boot1.efifat -i 4 ada0. You can also use dd of
> > course, but I prefer using gpart for these kinds of manipulations.
> >
> > This way, you can choose between booting in old school BIOS mode, or
> > UEFI mode. If the UEFI mode works flawlessly, you can always decide
> > later to dump the freebsd-boot partition, and use only an EFI partition.
> >
> > -Dimitry
> >
> > P.S.: The only thing that triggers my OCD here is that the EFI partition
> > has index 4, but is physically the second. But I can live with that,
> > until I finally delete the freebsd-boot partition. :)
>
>
> You likely want to carve out more like 50MB instead of 800k for UEFI
> partition. 800k is the minimum, but it also precludes many things you
> may need to do with UEFI applications down the line.
>
> Warner
>
Thanks guys for all the answers, I think I will just nuke freebsd-boot and
create a smallish efi where I can place boot1.efifat as suggested by
Dimitry. If this works, I can always shrink swap if I really need to later
on.
Just out of curiosity, what other functionality will UEFI provide that
takes up 50M?
Best regards,
Fernando
More information about the freebsd-stable
mailing list