Finished setting up the first PC, housed in a case I got off Freecycle. The internal setup works like this:
* FreeBSD installation to a 2gb CF card, on IDE
* 500GB spinning drive on SATA
The root partition uses UFS, while the SATA drive hosts a ZFS pool. If you aren't familiar with ZFS (or its Linux cousin, btrfs), it's worth reading about - it's a true next generation filesystem that provides end-to-end checksumming to protect against bit rot and silent data corruption, among other features.
Normally, you are supposed to use two drives for redundancy. Instead, I have one drive set to copies=2: this causes ZFS to store two copies of the data on the drive, so that error correction works barring drive mechanical failure. Obviously, this halves the available drive space.
With that done I've set up Unix login accounts, one per backup user, and then set their home directory to a dataset on the pool.
Most of this was done via command line, though a working copy of the Bupbox management software is installed on a thttpd + perl setup. I am now modifying Bupbox pages to hook into the correct conf files so it can be fully web-managed.