Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 15 Oct 2017 15:35:02 -0700
From:      Christopher Bowman <crb@chrisbowman.com>
To:        hackers@freebsd.org
Subject:   gpart difficulties
Message-ID:  <8C14AA5A-FD78-4A83-8640-B6FE2D41EAA1@chrisbowman.com>

next in thread | raw e-mail | index | archive | help
I have a home server with a fairly large amount of zfs disk space where =
I keep all of my persistent data.  As a result when new releases of =
FreeBSD come out I tend backup the root images of my machines to the zfs =
pool and, starting with the least important box, I blow away all the =
local partitions and reinstall from scratch.  Then I mount the server =
zfspool and restore config files and packages.  As a result my machines =
stay pretty up to date and clean.  Lately rather than burning DVDs =
I=E2=80=99ve decided that I will create a usb boot disks containing the =
entire DVD contents and simply go down the line and and install on one =
machine after the other.  My machine can now all boot off USB but =
don=E2=80=99t all have DVD drives.

I have the following script below which I was using to try configure an =
MBR bootable memory stick.  The commented out lines are a reminder to =
myself of how to copy over the ISO contents to the slice I create (I =
only do this when there is a new release so I forget.)

gpart create -s MBR da0
gpart add -i 1 -t freebsd da0
gpart set -a active -i 1 da0
gpart bootcode -b /boot/mbr da0
gpart create -s BSD -n 8 da0s1
gpart add -t freebsd-ufs -i 1 da0s1
gpart bootcode -p /boot/boot -i 1 da0s1
# newfs da0s1a
# mount /dev/da0s1a /mnt/usb
# mdconfig -a -t vnode -f =
/u1/ISOs/FreeBSD/11.1/FreeBSD-11.1-RELEASE-amd64-dvd1.iso
# mount -t cd9660 /dev/md0 /mnt/dvd
# cp -pr /mnt/dvd/* /mnt/usb
# umount /mnt/usb

What I=E2=80=99ve found that=E2=80=99s interesting is that the slice =
creation doesn=E2=80=99t seem to be persistent.  By that I mean that if =
I run the above script (included the commented stuff.)  I can clearly =
see the /mnt/usb contents are the same as the DVD.  If I then unmount =
/mnt/usb and remove the stick when I put it back in gpart show doesn=E2=80=
=99t seems to show the BSD label, just the MBR slice

If I reinsert and do the following:
gpart create -s BSD -n 8 da0s1
gpart add -t freebsd-ufs -i 1 da0s1
gpart bootcode -p /boot/boot -i 1 da0s1
fsck /dev/da0s1a
mount /dev/da0s1a /mnt/usb

Then the file system is there just as before.  The slice creation =
doesn=E2=80=99t seem persistent.  Am I missing something?  Is there =
something I have to do to commit the slice?  Is this a bug?

I appreciate your help.

Christopher




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8C14AA5A-FD78-4A83-8640-B6FE2D41EAA1>