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>