How to have a rock solid Linux backup without pro budget

UPDATE: Since posting this article I have developed a new version of this script for my backup needs. It utilizes incremental backup and improves on CPU load, bandwidth and backup time.

Starting a web development company without any budget is a slippery slope. Loosing all your data can cost you all the months of hard work and development and cashflow that has been generated. Who can figure out I could not allow that with no help at all? So being in my shoes I had to come up with a backup solution that works seamlessly with the resources that I had: one dedicated Debian box in Frankfurt, my home desktop with abundant disk space and my flat rate ADSL line.

It turns out the solution is not that hard at all according to this site, and can be achieved using SSH authentication keys and some simultaneous trickery. All I do to employ it is leave my home desktop box running all night and in the morning there is a fresh backup on my disk. Voila!

The solution that I developed was utilized using the following crontab entry:

# Backup
27 4    * * *   root    /root/bin/ > /dev/null


The script archived the bare necessities needed to restore the system to full operation:

#!/usr/bin/env bash

LOG_ -->