1/ install de freebsd
#!/bin/sh
echo '#5 Create ZFS Pool sys_tank'
mkdir /boot/zfs
zpool create sys_tank /dev/gpt/ssd-intel
zfs set checksum=fletcher4 sys_tank
zfs set dedup=on sys_tank
zfs set compression=off sys_tank
#zfs set mountpoint=/mnt sys_tank
echo '#6 At this point export and import the pool while preserving zroot.cache in /tmp.'
zpool export sys_tank
zpool import -o cachefile=/tmp/zpool.cache -o altroot=/mnt sys_tank
echo '#7 Create ZFS filesystem hierarchy'
zfs create sys_tank/root
zfs create sys_tank/usr
zfs create -o compression=lzjb -o setuid=off sys_tank/usr/ports
zfs create -o compression=off -o exec=off -o setuid=off sys_tank/usr/ports/distfiles
zfs create -o compression=off -o exec=off -o setuid=off sys_tank/usr/ports/packages
zfs create -o compression=lzjb -o exec=off -o setuid=off sys_tank/usr/src
zfs create sys_tank/var
zfs create -o compression=lzjb -o exec=off -o setuid=off sys_tank/var/crash
zfs create -o exec=off -o setuid=off sys_tank/var/db
zfs create -o compression=lzjb -o exec=on -o setuid=off sys_tank/var/db/pkg
zfs create -o exec=off -o setuid=off sys_tank/var/empty
zfs create -o compression=lzjb -o exec=off -o setuid=off sys_tank/var/log
zfs create -o compression=gzip -o exec=off -o setuid=off sys_tank/var/mail
zfs create -o exec=off -o setuid=off sys_tank/var/run
zfs create -o compression=lzjb -o exec=on -o setuid=off sys_tank/var/tmp
zfs create -o compression=on -o exec=on -o setuid=off sys_tank/tmp
zpool set bootfs=sys_tank/root sys_tank
echo '# Make /var/empty readonly'
zfs set readonly=on sys_tank/var/empty
echo '#8 Add swap space and disable checksums.'
zfs create -V 10G sys_tank/swap
zfs set org.freebsd:swap=on sys_tank/swap
zfs set checksum=off sys_tank/swap
zfs set dedup=off sys_tank/swap
zfs umount -a
zfs set mountpoint=none sys_tank
zfs set mountpoint=/ sys_tank/root
zfs set mountpoint=/tmp sys_tank/tmp
zfs set mountpoint=/usr sys_tank/usr
zfs set mountpoint=/var sys_tank/var
zpool export sys_tank
zpool import -o cachefile=/tmp/zpool.cache -o altroot=/mnt sys_tank
chmod 1777 /mnt/tmp
#cd /mnt ; ln -s usr/home home
chmod 1777 /mnt/var/tmp
echo '# Install FreeBSD to sys_tank'
cd /usr/freebsd-dist
export DESTDIR=/mnt
for file in base.txz lib32.txz kernel.txz doc.txz ports.txz src.txz;
do (cat $file | tar --unlink -xpvJf - -C ${DESTDIR:-/}); done
cp /tmp/zpool.cache /mnt/boot/zfs/zpool.cache
echo '# Installe fstab, rc.conf et loader.conf and some cool stuff'
# copy rc.conf
cd /mnt/etc/ ; fetch http://192.168.1.96/zurp_fs/sys_conf/rc.conf
cd /mnt/etc/ ; fetch http://192.168.1.96/zurp_fs/sys_conf/sysctl.conf
cd /mnt/etc/ ; fetch http://192.168.1.96/zurp_fs/sys_conf/make.conf
# copy fstab
touch /mnt/etc/fstab
# copy loader.conf
cd /mnt/boot/ ; fetch http://192.168.1.96/zurp_fs/sys_conf/loader.conf
# Install du script post_install
mkdir /mnt/usr/scripts
mkdir /mnt/usr/scripts/userland
cd /mnt/usr/scripts
fetch http://192.168.1.96/zurp_fs/scripts/update_scripts.sh
chmod +x update_script.sh
shutdown -r now |
2/ post install et clean
3/ services natifs :
4/ ez_jail
5/ services en jail :
-0 netatalk/samba.nfs
-1 SubSonic
-2 RetroShare & transmission
-3 un bureau Gnome (debian ?)
-4 serveur web public
-5 serveur web privé (administration, webmin …)
-6 virtualbox