ZFSBoot try and bsdlabel bootstrap code

Joao Barros joao.barros at gmail.com
Mon Nov 24 18:09:08 PST 2008


On Fri, Nov 21, 2008 at 9:31 PM, Olivier SMEDTS <olivier at gid0.org> wrote:
> 2008/11/20 Doug Rabson <dfr at rabson.org>:
>>
>> On 19 Nov 2008, at 22:12, Olivier SMEDTS wrote:
>>
>>> Hello,
>>>
>>> I want to boot off a ZFS pool (version 13) on an USB stick for testing
>>> purposes. But I'm stuck with the bsdlabel bootstrap code size...
>>> I'm using a 2 hours old CURRENT.
>>>
>>> # kldload usb2_storage_mass
>>> # kldload zfs
>>> # dd if=/dev/zero of=/dev/da0 bs=512 count=32
>>> # fdisk -BI da0
>>> # dd if=/dev/zero of=/dev/da0s1 bs=512 count=32
>>> # bsdlabel -wB -b /boot/zfsboot da0s1
>>> bsdlabel: boot code /boot/zfsboot is wrong size
>>>
>>> Is what I'm trying to do with bsdlabel wrong ?
>>> I previously tried with the default bootstrap code but I had an
>>> (expected) "boot: Not ufs" error at boot.
>>>
>>> PS : I'm not subscribed to this list.
>>
>> The process for install zfsboot is a bit manual (and undocumented). Try
>> something like this:
>>
>>        # dd if=/boot/zfsboot of=/dev/da0s1 count=1
>>        # dd if=/boot/zfsboot of=/dev/ds0s1 skip=1 seek=1024
>>
>>Alternatively, you might try using the brand new support for GPT that I committed yesterday:
>>
>>       # gpt create -f da0
>>       # gpt boot -b /boot/pmbr -g /boot/gptzfsboot da0
>>       # gpt add -t freebsd-zfs da0
>>       # zpool create mypool da0p2
>
> It works !
>
> Now I'm stuck at loader(8) prompt.

That's a me too.

I tried this under vmware with LOADER_ZFS_SUPPORT=yes on make.conf:
# gpart create -s gpt ad0
# gpart add -b 34 -s 128 -t freebsd-boot ad0
ad0p1 added
# gpart add -b 162 -s 15078327 -t freebsd-zfs ad0
ad0p2 added
# gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i 1 ad0
# zpool create tank ad0p2
# zpool set bootfs = tank tank

lsdev on loader shows:
cd devices:
disk devices:
   disk0:    BIOS drive c:
      disk0p1: FreeBSD boot
      disk0p2: FreeBSD ZFS
pxe devices:
zfs devices:

Any hints?

-- 
Joao Barros


More information about the freebsd-fs mailing list