Installera FreeBSD på ZFS via FreeBSD 9.0 installern

From Peters wiki
Jump to navigation Jump to search

Denna guide beskriver hur man manuellt kan installera FreeBSD på ZFS via FreeBSD 9.0 installern (metoden fungerar även för FreeBSD 9.1 och 9.2). Detta kan vara ett alternativ till installation via mfsBSD. Vi väljer att lägga systemet under ett dataset som heter ROOT för att vara beadm kompatibel.

Installationen

Starta installationen av FreeBSD. När du kommer till Partitioning, välj Shell för att komma till ett skal. Om disken du ska installera på heter ada0, kör följande kommandon:

# gpart create -s gpt ada0
# gpart add -b 64k -s 64k -t freebsd-boot ada0
# gpart add -s 4G -t freebsd-swap -l swap0 ada0
# gpart add -t freebsd-zfs -l disk0 ada0
# gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i 1 ada0

Detta skapar 3 partioner (boot, swap och för ZFS). Swappen sätts till 4GB i exemplet. Anpassa enligt önskemål.

Skapa de ZFS datasets som du vill ha. I exemplet nedan döper vi poolen till rpool och skapar 4 datasets för: /, /usr, /var och /tmp.

# zpool create -o altroot=/mnt -o cachefile=/var/tmp/zpool.cache -m none rpool /dev/gpt/disk0
# zfs create -o mountpoint=none rpool/ROOT
# zfs create -o mountpoint=/ rpool/ROOT/freebsd-9.0
# zfs create -o mountpoint=/usr rpool/ROOT/freebsd-9.0/usr
# zfs create -o mountpoint=/var rpool/ROOT/freebsd-9.0/var
# zfs create -o mountpoint=/tmp rpool/ROOT/freebsd-9.0/tmp
# zpool set bootfs=rpool/ROOT/freebsd-9.0 rpool
# exit

Nu startar installationen. Kör klart allt. När installationen är klar, välj Live CD istället för Reboot. Logga in som root utan lösenord. Kör sedan följande kommandon:

# cp /var/tmp/zpool.cache /mnt/boot/zfs/.
# cat << EOF >> /mnt/etc/rc.conf
zfs_enable="YES"
EOF
# cat << EOF >> /mnt/etc/fstab
/dev/gpt/swap0  none  swap  sw  0  0
EOF
# cat << EOF >> /mnt/boot/loader.conf
zfs_load="YES"
vfs.root.mountfrom="zfs:rpool/ROOT/freebsd-9.0"
EOF
# zfs unmount -a
# zfs set mountpoint=legacy rpool/ROOT/freebsd-9.0

Starta om systemet.