#!/bin/sh -ex echo "nope!!!" exit 2 # wipe partitons gpart destroy -F da0 gpart destroy -F da1 gpart destroy -F da2 gpart destroy -F da3 gpart destroy -F da4 gpart destroy -F da5 gpart destroy -F da6 gpart destroy -F da7 gpart destroy -F nvd0 gpart destroy -F nvd1 # initialize dd if=/dev/zero of=/dev/da0 count=4 bs=4m dd if=/dev/zero of=/dev/da1 count=4 bs=4m dd if=/dev/zero of=/dev/da2 count=4 bs=4m dd if=/dev/zero of=/dev/da3 count=4 bs=4m dd if=/dev/zero of=/dev/da4 count=4 bs=4m dd if=/dev/zero of=/dev/da5 count=4 bs=4m dd if=/dev/zero of=/dev/da6 count=4 bs=4m dd if=/dev/zero of=/dev/da7 count=4 bs=4m dd if=/dev/zero of=/dev/nvd0 count=4 bs=4m dd if=/dev/zero of=/dev/nvd1 count=4 bs=4m # create partition table gpart create -s gpt da0 gpart create -s gpt da1 gpart create -s gpt da2 gpart create -s gpt da3 gpart create -s gpt da4 gpart create -s gpt da5 gpart create -s gpt da6 gpart create -s gpt da7 gpart create -s gpt nvd0 gpart create -s gpt nvd1 # create partitions gpart add -t freebsd-zfs -b 4096 -a 4k da0 gpart add -t freebsd-zfs -b 4096 -a 4k da1 gpart add -t freebsd-zfs -b 4096 -a 4k da2 gpart add -t freebsd-zfs -b 4096 -a 4k da3 gpart add -t freebsd-zfs -b 4096 -a 4k da4 gpart add -t freebsd-zfs -b 4096 -a 4k da5 gpart add -t freebsd-zfs -b 4096 -a 4k da6 gpart add -t freebsd-zfs -b 4096 -a 4k da7 gpart add -t freebsd-zfs -b 4096 -a 4k -s 64G nvd0 gpart add -t freebsd-zfs -b 4096 -a 4k -s 64G nvd1 gpart add -t freebsd-zfs -b 4096 -a 4k -s 640G nvd0 gpart add -t freebsd-zfs -b 4096 -a 4k -s 640G nvd1 # encrypt partitions geli init -K geli-tank.key -J /etc/keyfile -s 4096 da0p1 geli init -K geli-tank.key -J /etc/keyfile -s 4096 da1p1 geli init -K geli-tank.key -J /etc/keyfile -s 4096 da2p1 geli init -K geli-tank.key -J /etc/keyfile -s 4096 da3p1 geli init -K geli-tank.key -J /etc/keyfile -s 4096 da4p1 geli init -K geli-tank.key -J /etc/keyfile -s 4096 da5p1 geli init -K geli-tank.key -J /etc/keyfile -s 4096 da6p1 geli init -K geli-tank.key -J /etc/keyfile -s 4096 da7p1 geli init -K geli-tank.key -J /etc/keyfile -s 4096 nvd0p1 geli init -K geli-tank.key -J /etc/keyfile -s 4096 nvd1p1 geli init -K geli-tank.key -J /etc/keyfile -s 4096 nvd0p2 geli init -K geli-tank.key -J /etc/keyfile -s 4096 nvd1p2 # attach partitions geli attach -k geli-tank.key -j /etc/keyfile da0p1 geli attach -k geli-tank.key -j /etc/keyfile da1p1 geli attach -k geli-tank.key -j /etc/keyfile da2p1 geli attach -k geli-tank.key -j /etc/keyfile da3p1 geli attach -k geli-tank.key -j /etc/keyfile da4p1 geli attach -k geli-tank.key -j /etc/keyfile da5p1 geli attach -k geli-tank.key -j /etc/keyfile da6p1 geli attach -k geli-tank.key -j /etc/keyfile da7p1 geli attach -k geli-tank.key -j /etc/keyfile nvd0p1 geli attach -k geli-tank.key -j /etc/keyfile nvd1p1 geli attach -k geli-tank.key -j /etc/keyfile nvd0p2 geli attach -k geli-tank.key -j /etc/keyfile nvd1p2 # wipe encrypted volumes dd if=/dev/zero of=/dev/da0p1.eli count=4 bs=4m dd if=/dev/zero of=/dev/da1p1.eli count=4 bs=4m dd if=/dev/zero of=/dev/da2p1.eli count=4 bs=4m dd if=/dev/zero of=/dev/da3p1.eli count=4 bs=4m dd if=/dev/zero of=/dev/da4p1.eli count=4 bs=4m dd if=/dev/zero of=/dev/da5p1.eli count=4 bs=4m dd if=/dev/zero of=/dev/da6p1.eli count=4 bs=4m dd if=/dev/zero of=/dev/da7p1.eli count=4 bs=4m dd if=/dev/zero of=/dev/nvd0p1.eli count=4 bs=4m dd if=/dev/zero of=/dev/nvd1p1.eli count=4 bs=4m dd if=/dev/zero of=/dev/nvd0p2.eli count=4 bs=4m dd if=/dev/zero of=/dev/nvd1p2.eli count=4 bs=4m # create pools zpool create tank raidz2 \ /dev/da0p1.eli \ /dev/da1p1.eli \ /dev/da2p1.eli \ /dev/da3p1.eli \ /dev/da4p1.eli \ /dev/da5p1.eli \ /dev/da6p1.eli \ /dev/da7p1.eli \ log mirror \ /dev/nvd0p1.eli \ /dev/nvd1p1.eli zpool create buffer nvd0p2.eli nvd1p2.eli # configure pools zfs set compression=lz4 tank zfs set logbias=latency tank zfs set atime=off tank zfs set compression=off buffer zfs set atime=off buffer zfs set sync=disabled buffer # create datasets zfs create tank/pub zfs create tank/priv