shrinking of FreeBSD root partition on GPT

Arthur Chance freebsd at
Sat Nov 8 14:06:48 UTC 2014

On 08/11/2014 10:58, Coert wrote:
> Hello all!
> Just installed FreeBSD on my home server, (used to be linux)
> When I did the installation, I used the installer defaults, and it gave me the
> following:
> gpart show ada0
> =>       34  488397101  ada0  GPT  (233G)
>           34        128     1  freebsd-boot  (64K)
>          162  480247680     2  freebsd-ufs  (229G)
>    480247842    8149292     3  freebsd-swap  (3.9G)
>    488397134          1        - free -  (512B)
> I would like to shrink my root partition, (GPT partition 2).
> After reading through the handbook, I can adapt to shrinking instead of
> growing,
> What I am going to try is:
> 1. Boot from LiveCD
> 2. do a dump -0 of the current root partition
> 3. delete the root GPT partition, and create a new smaller GPT partition.
> a newfs on the new slice, and restore the dump.
> Do I need to restore any bootcode after this? I read about bsdlabel, but that
> seems to be only for MBR scheme?
 > Will this work? or did i miss a step?

The two levels of bootcode are in the PMBR and partition 1, so resizing 
partition 2 shouldn't affect it. You can always use gpart bootcode to 
reinstall if you're worried.

> When that is done, I will create a freebsd-zfs partition in the freed space on
> the disk. (Will rather still keep freebsd root on UFS)

If you don't delete the swap partition and recreate it immediately after 
the shrunken root partition you're going to be creating a GPT table 
that's out of order with respect to partition locations. I have 
absolutely no idea whether this is legitimate, but even if it is I 
wouldn't personally risk it as you can't guarantee all software will 
allow for it.

On a slightly different subject, are you using GPT partition labels? If 
not, it might be worth reading Warren Block's excellent article about 
them here

More information about the freebsd-questions mailing list