Currently I back up my personal files using a simple shell script that creates a tarball. It is being run by cron hourly.
I'm planning to switch to incremental backups (I will use duplicity), because this will minimize the data transfer over network.
This leads me to some general questions:
- when making incremental backups, what strategy to choose? As I understand, such a strategy implies creating a full backup, then some incremental backups. At some point, a full backup is made again and it starts a new set. My problem is I don't know how to decide how often I should make this full backup again. If I'm doing backups hourly, would it make sense to start the day with a full backup and do incremental ones later, or is there a better strategy?
- how many full sets of backups should I keep before starting to rotate them?
The right answer depends on questions like:
Unless you have special needs, try to keep your schedule simple. Complex backup schedules can cause confusion during the restore, and you don't want more confusion during the restore.
Many backup products offer a simple, default backup schedule similar to the following. This can be easily adopted to your future needs.
Daily incrementals, keep for 2 weeks.
Hourly incremental sounds too frequent for most people, as the files don't change that frequently.
Incremental backups are a complete PITA and should be avoided if at all possible.
If network bandwidth really is an issue, then I'd recommend maintaining a mirror elsewhere and replicating from the source using rsync/unison then creating a coherent tarball of the refreshed image on the destination.