zfs - acieroid/newsome GitHub Wiki

Liens

http://www.freebsd.org/cgi/man.cgi?query=zpool&sektion=8 https://www.freebsd.org/doc/handbook/filesystems-zfs.html http://www.freebsd.org/cgi/man.cgi?query=zfs&sektion=8&apropos=0&manpath=FreeBSD+9.2-RELEASE https://wiki.freebsd.org/RootOnZFS/UFSBoot http://erdgeist.org/arts/software/ezjail/ | grep zfs http://thatreddevil.wordpress.com/2013/01/12/freebsd-9-1-jail-howto-ezjail-root-on-zfs-zfs-mirror/

50 à 100 jails par machines => 5 à 10 pools de disques

Test VM

VM de test, 2G de disque, 1 pool. boot sur partition ufs. installation depuis un liveCD, partitionnement en mode shell :

cas réel: 1 partition freebsd-ufs pour le boot 1 partition freebsd-swap 1 partition pour le pool 'host' du système de base. maybe y mettre aussi la basejail 1 partition pour chaque pool de services

(how do we code-multiline lol.)

-- géométrie pour MBR (arbitraire, cf. GPT)
# gpart create -s mbr ad0
-- ajout slice bsd`
# gpart add -t freebsd ad0
ada0s1 created
# gpart create -s BSD ad0s1
-- set ada0s1 to be active
# gpart set -a active -i 1 ad0
active set on ada0s1
-- création partition de boot
# gpart add -t freebsd-ufs -s 200M ada0s1
ada0s1a added
-- création partition swap
# gpart add -t freebsd-swap -s 200M ada0s1
ada0s1b added
-- création partition zfs
# gpart add -t freebsd-zfs ada0s1
ada0s1d added
-- install bootcode
# gpart bootcode -b /boot/boot0 /dev/ada0
-- opensolaris.ko devrait être automatiquement chargé à l'occasion
# kldload /boot/kernel/zfs.ko
-- création d'un pool host. un pool par partition.
# zpool create -m /mnt/ host /dev/ada0s1d
-- set default bootable dataset
# zpool set bootfs=host host
-- setup boot partition
# mkdir /tmp/host/boot
# newfs /dev/ada0s1a
# mount /dev/ada0s1a /mnt/boot
-- create hierarchy (oopaas)
# zfs set checksum=fletcher4 host
# exit

puis /mnt/boot kernel.txz write fail disk full lala nuit.

Setup @acieroid-desktop

Boot from an image (http://mfsbsd.vx.sk/files/images/). Connect in ssh, launch tmux. Fetch freebsd-install.sh and launch it.

Things to do:

  • Custom kernel for the host? (nothing except what is necessary)

Post-installation

  • DNS
  • pkg
  • add admin with ssh key & strong password
  • PermitRootLogin no
  • create jail flavours
  • Portaudit^W jailaudit w/ mails
  • PF

Notes

echo 'nameserver 8.8.8.8' > /etc/resolv.conf
yes | pkg && pkg update && pkg upgrade
rm /usr/local/etc/pkg.conf
mkdir -p /usr/local/etc/pkg/repos
cat > /usr/local/etc/pkg/repos/FreeBSD.conf
FreeBSD: {
  url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest",
  mirror_type: "srv",
  enabled: yes
}
^D