Die Frage der Partitionierung ist so alt wie die Menschheit und wie immer bei solchen Fragen gibt es zwei Lager. Im Jahr 2016 mit seinen großen Speichermedien, zuverlässigen Dateisystemen und ZFS würde
ich eine Partition für das System und eine für die Daten unter /home vornehmen. Auf UFS also in etwa:
/ -> 25GB
/usr/home -> Rest
Dann kann man das System platt machen, ohne seine Daten zu gefährden. Und man kann ohne großen Aufwand zwei getrennte Backups für das System und für die Daten schreiben. Bei ZFS würde ich es ähnlich machen, allerdings noch Boot-Environments nutzen. Also in etwa so:
tank/ROOT/default -> Standard-Bootenv
tank/home -> Wird nach /usr/home gemountet
Je nach Bedarf kann man sich dann noch gemeinsame Ports, Sourcen und so weiter gönnen:
tank/ports -> /usr/ports
tank/src -> /usr/src
Bei ZFS ist es auch eine gute Idee auf allen Datasets lz4-Kompression einzuschalten. Der Geschwindigkeitsverlust ist vernachlässigbar, der Speicherplatzgewinn aber doch recht nennenswert. Es schwankt natürlich nach Art der Daten, 50% sind aber durchaus zu erreichen. Eine Ausnahme sind SSDs mit Sandforce-Controllern, denn sie mögen keine vorkomprimierten Daten und quittieren sie mit Perfomanceeinbrüchen bis hin zu verkürzter Lebensdauer.
Zu Boot-Environments schaue auch mal hier:
http://blather.michaelwlucas.com/archives/2363 In FreeBSD 10.3 wird man das Boot-Environment übrigens direkt im Loader auswählen können.