Aligning MBR for ZFS boot help

Cody Ritts cr at caltel.com
Sun Mar 10 19:47:54 UTC 2013


Yeah, just for clarity:

> root at lightning# gpart show da0s1
> =>       0  39068064  da0s1  BSD  (18G)
>           0        32         - free -  (16k)
>          32  39067648      1  freebsd-zfs  (18G)
>    39067680       384         - free -  (192k)

and

> dd if=/boot/zfsboot of=/dev/da0s1 count=1
> dd if=/boot/zfsboot of=/dev/da0s1a skip=1 seek=1024

will not boot.
and will result in:

> zfsboot: No ZFS Pools located, can't boot

The freebsd-zfs slice cannot have an offset.

I tried it several different ways first, since it was the easiest to 
align, and as soon as I added that offset, the boot strap process would 
break.

Thanks

Cody

On 3/10/13 12:34 PM, Warren Block wrote:
> On Sun, 10 Mar 2013, Cody Ritts wrote:
>
>> So, aligning to 63MB was still tricky.  I found your thread, but I
>> could not find step by step how to calculate the offset.
>
> Here is the procedure I had in mind:
>
> # gpart create -s mbr da0
> da0 created
> root at lightning# gpart add -t freebsd -b 2016 da0
> da0s1 added
> # gpart show da0
> =>      63  39070017  da0  MBR  (18G)
>          63      1953       - free -  (976k)
>        2016  39068064    1  freebsd  (18G)
>
> # gpart create -s bsd da0s1
> da0s1 created
> # gpart add -t freebsd-zfs -a 1m da0s1
> da0s1a added
> root at lightning# gpart show da0s1
> =>       0  39068064  da0s1  BSD  (18G)
>           0        32         - free -  (16k)
>          32  39067648      1  freebsd-zfs  (18G)
>    39067680       384         - free -  (192k)
>
> The first slice starts at the last CHS-aligned block before 1M, or 2016.
> Misaligned, but not a problem because nothing will be reading from that
> location.
>
> The freebsd-zfs partition is created, letting gpart align it to 1M.
> gpart starts the partition at an offset of 32, making it the 1M-aligned
> block 2048 of the disk.
>
> gpart should also be able to install the bootcode correctly, but I have
> not tried it for MBR and ZFS.
>


More information about the freebsd-fs mailing list