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