Comparing remote backup options

I have always been interested in backups. (In fact, I created an open source project called SaraB: Schedule And Rotate Automatic Backups.) Anyone who has valuable data should be implementing a proper backup process. For a good primer on the fundamentals of backup, I recommend visiting "The Tao of Backup".


Most recently, I have been trying to decide how to best implement the concept of "Separation". This requires that I store my data in multiple geographic locations to prevent a local disaster from destroying all copies of my data. Like most people, my collection of photos, videos, and documents has been growing quickly as technology become more prevalent and uses higher resolutions. The value of my data becomes greater with every passing holiday, birthday, wedding, and vacation.

Here are some options that I have come up with to backup my data to a remote site.

Manual Solutions:

1. Periodically burn DVDs and carry them to another location
  • Pros:
    • Simple
    • Cheap (for a small amount of data, and infrequent backups)
  • Cons:
    • Manual process requires user interaction for every backup
    • You risk losing all data created since the last backup. There is a monetary transaction cost for each backup, because you must pay for the DVD media. This encourages you to backup infrequently.
2. Purchase two USB hard-drives. Periodically backup to the local one and swap it with the off-site drive.
  • Pros:
    • Simple
    • Cheap (if you have a LOT of data to backup)
  • Cons:
    • Manual process requires user interaction for every backup
    • You risk losing all data created since the last backup. Because there is no monetary transaction cost for creating backups (unlike Option #1), you should be able to backup more often and therefore risk losing less data.
Automated Network Solutions:

3. Simple home-grown network backup
  • Description:
    • Setup some form of synchronization (SFTP, SCP) between two computers at separate locations. A family member's computer or a work computer would be sufficient. Use extra space on each PC to store the data of the remote PC.
  • Pros:
    • Cheap to implement (if extra space is available on hard drives)
    • Backups are regularly sent off-site, without user interaction
    • Data is encrypted during transmission
  • Cons:
    • May require purchasing a hard drive if the storage requirements exceed the available space.
    • Highly inefficient use of bandwidth and storage resources. If you have a lot of data, you will be constantly maxing your upload speed to your ISP. This could cause a serious degradation in normal internet usage.
    • You risk losing all data created since the last backup. Because your upload speed is a bottleneck, you may not be able to perform frequent backups. If you have a lot of data, this could result in less frequent backups than Option #1.
4. Advanced home-grown network backup
  • Description:
    • Implement a backup system that uses Rsync (for efficiency) and SSH (for security). A family member's computer or a work computer would be sufficient. Use extra space on each PC to store the data of the remote PC.
  • Pros:
    • Cheap to implement (if extra space is available on hard drives)
    • Backups are regularly sent off-site, without user interaction
    • Data is encrypted during transmission
    • Efficient use of bandwidth and storage resources
  • Cons:
    • Complex to setup
    • May require purchasing a hard drive if the storage requirements exceed the available space.
    • You risk losing all data created since the last backup. Because you are only uploading changes to your data, you should be able to perform frequent backups.
5. Subscription to backup service
  • Description:
    • Mozy and Carbonite are the best value, $5/month for unlimited data. They have clients that use efficient backup algorithms and also provide encryption to protect the privacy of your data.
  • Pros:
    • Simple
    • Cheap to implement (especially for a lot of data)
    • Backups are regularly sent off-site, without user interaction
    • Data is encrypted during transmission and storage (Mozy even lets you use your own encryption keys to ensure privacy. Now they just need to open source the client so that we can see if they implemented this securely.)
    • Efficient use of bandwidth and storage resources
  • Cons:
    • Initial backup can take many days (after that, only changes will be sent)
    • Restoring data may take many hours
    • You risk losing all data created since the last backup. Because you are only uploading changes to your data, you should be able to perform frequent backups.
    • No Linux client available
Conclusion:

I am undecided about which option to choose. I like options #2, #4, and #5. Until a Linux client is made available for the subscription services, I cannot use option #5. I do like the simplicity of purchasing two USB drives and swapping them at work everyday. Plus, the USB hard drives could be used for other storage purposes.

What option do you prefer? Do you have any other options that I have missed?

Comments

  1. rsnapshot is a very easy to use implementation of the rsync/ssh combination you mention in #4. It handles rotation and uses hard links so you won't take up much space on your incremental backups.

    ReplyDelete
  2. I like 4. rsnapshot sounds interesting. The problem becomes what if you don't have another place you can store the data? Maybe you don't have a computer at work that you can use for this purpose or maybe you don't "work". :-)

    I have a laptop and a desktop. Although the laptop is often in the same place as the desktop, it's usually not when I am not also there. If a fireball destroys my house while I'm there, my data is the least of my problems, so I think that works pretty good. Hard disk space permitting of course.

    ReplyDelete
  3. Look before you leap!

    Online Backup Smackdown

    Carbonite vs. SystemSafe

    And the winner is...

    The Backup Smackdown! (click)

    ReplyDelete
  4. Look before you leap!

    Online Backup Smackdown

    Carbonite vs. SystemSafe

    And the winner is...

    The Backup Smackdown! (click)

    ReplyDelete
  5. Box Backup does online encrypted backups and is bandwidth-efficient. Not even a remote server compromise will give access to your data, so it's better than just SSH/SSL tunneling.

    ReplyDelete

Post a Comment

Popular posts from this blog

Using the Cisco console in Linux

What it takes to make Ubuntu ready for use

Five ways to use Windows apps in Linux