Well the way I do it is to use ZFS (for the root filesystem and all data) and just create daily recursive snapshots of the base filesystem, and send them to your backup drive. In order to restore, you'd just run `zfs recv` on a clean disk and that'd restore your OS.
The only other thing you'd...