Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do you back up your development machine? [closed]

How do you back up your development machine so that in the event of a catastrophic hardware malfunction, you are up and running in the least amount of time possible?

like image 978
Kevin Pang Avatar asked Aug 25 '08 20:08

Kevin Pang


People also ask

How do I backup my entire computer to an external hard drive?

Use File History to back up to an external drive or network location. Select Start​ > Settings > Update & Security > Backup > Add a drive , and then choose an external drive or network location for your backups.

How do you do a system back up?

Select the Start button, then select Control Panel > System and Maintenance > Backup and Restore. Choose Select another backup to restore files from, and then follow the steps in the wizard. If you're prompted for an administrator password or confirmation, type the password or provide confirmation.


2 Answers

There's an important distinction between backing up your development machine and backing up your work.

For a development machine your best bet is an imaging solution that offers as near a "one-click-restore" process as possible. TimeMachine (Mac) and Windows Home Server (Windows) are both excellent for this purpose. Not only can you have your entire machine restored in 1-2 hours (depending on HDD size), but both run automatically and store deltas so you can have months of backups in relatively little space. There are also numerous "ghosting" packages, though they usually do not offer incremental/delta backups so take more time/space to backup your machine.

Less good are products such as Carbonite/Mozy/JungleDisk/RSync. These products WILL allow you to retrieve your data, but you will still have to reinstall the OS and programs. Some have limited/no histories either.

In terms of backing up your code and data then I would recommend a sourcecode control product like SVN. While a general backup solution will protect your data, it does not offer the labeling/branching/history functionality that SCC packages do. These functions are invaluable for any type of project with a shelf-life.

You can easily run a SVN server on your local machine. If your machine is backed up then your SVN database will be also. This IMO is the best solution for a home developer and is how I keep things.

like image 91
Andrew Grant Avatar answered Sep 19 '22 03:09

Andrew Grant


  1. All important files are in version control (Subversion)
    • My subversion layout generally matches the file layout on my web server so I can just do a checkout and all of my library files and things are in the correct places.
  2. Twice-daily backups to an external hard drive
  3. Nightly rsync backups to a remote server.
    • This means that I send stuff on my home server over to my webhost and all files & databases on my webhost back home so I'm not screwed if I lose either my house or my webhost.
like image 20
Mark Biek Avatar answered Sep 22 '22 03:09

Mark Biek