On Fri, Dec 27, 2013 at 10:08 AM, Warren Block <wblock_at_wonkity.com> wrote: > On Fri, 27 Dec 2013, Mathieu Arnold wrote: > >> +--On 27 décembre 2013 10:28:07 -0500 Thomas Hoffmann <trh411_at_gmail.com> >> wrote: >> | All the examples I've seen for updating bootcode assume GPT. If one has >> | MBR (as I do) and assuming the following basic scheme: >> | >> | gpart show ada0 >> | => 63 976773105 ada0 MBR (466G) >> | 63 976773105 1 freebsd [active] (466G) >> | >> | gpart show ada0s1 >> | => 0 976773105 ada0s1 BSD (466G) >> | 0 943218736 1 freebsd-zfs (450G) >> | 943218736 33554369 2 freebsd-swap (16G) >> | >> | would the equivalent bootcode statement be: >> | >> | gpart bootcode -b /boot/pmbr -p /boot/zfsboot ada0s1 > > > No, the PMBR is for GPT partitioning only. > > >> | where the boot code is /boot/zfsboot (rather than /boot/gptzfsboot) and >> | ada0s1 is the slice on which FreeBSD is installed? >> >> Hum, no, if you're using MBR and not GPT, you can't use gpart, > > > Why not? gpart is not GPT-specific. It handles MBR and BSDlabel bootcode > correctly. > > >> you have to >> do something aweful like this : >> # dd if=/boot/zfsboot of=/dev/ada0 count=1 > > > That will overwrite the MBR partition table. > > >> # sysctl kern.geom.debugflags=0x10 >> # dd if=/boot/zfsboot of=/dev/ada0 skip=1 seek=1024 > > > That seems dangerous. I have not tried with zfsboot, but this should be > close: > > # gpart bootcode -b /boot/zfsboot ada0 > # gpart bootcode -b /boot/zfsboot ada0s1 > > Untested! The first one may need to use /boot/mbr. A better way to do > this, provided the system does not have a broken BIOS, would be to backup, > repartition with GPT, and restore, avoiding the complication of multiple > partitioning schemes. > The correct way to install/update ZFS Boot code on an MBR disk is: Install boot Manager (required on first install) # gpart bootcode -b /boot/boot0 ad0 Note: /boot/mbr could also be used if you are not multibooting Install ZFS boot1 stage # sysctl kern.geom.debugflags=0x10 # dd if=/boot/zfsboot of=/dev/ada0s1 count=1 or # dd if=/boot/zfsboot of=/tmp/zfsboot1 count=1 # gpart bootcode -b /tmp/zfsboot1 /dev/ada0s1 Install ZFS boot2 stage # dd if=/boot/zfsboot of=/dev/ada0s1a skip=1 seek=1024 -- DISCLAIMER: No electrons were maimed while sending this message. Only slightly bruised.Received on Fri Dec 27 2013 - 16:15:10 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:45 UTC