<< Back To All Blogs
Creating A Solid Backup Plan
Tuesday, February 3rd, 2009
I have been doing software development for the majority of my entire life. Along the way I have also done a lot of computer support work, fixed (and broken) a number of computers, and repaired and recovered data for hundreds of friends, family, coworkers, and seemingly random people.
Among all of these years one thing maintains consistent that I always tell others (and myself!): Backup your data!
The majority of my life has been spent in one way or another linked to a computer, be it through photos, chat, email, etc. The scary part of this as well is that a large majority of all these years, chats, pictures and more could easily be lost at the strike of a lightning bolt, or the click of a virus, or heaven forbid a faulty (Seagate anyone?) hard drive. I have seen it happen to many, and thought it had happened to myself (that scared me enough to get to where I'm at today).
I figured I would share my backup plan that I have in place, in hope that it may help some others with a few ideas. I will list all of my concepts that have worked for me for a number of years now, in no particular order of importance. I should also precaution that these work great for ME. These plans are not necessarily good for an enterprise (although it is scary how few actually have a good backup plan). Backup plans depend on what you do with your data, how much you have, and how important it really is.
My Setup is as follows:
I have 2 servers and 1 laptop (my dev laptop) in my house, networked together. One of my servers solely runs SVN and MySQL/SQL Server (2000, 2005 and 2008). The other server is my web server, RDP server, as well as VPN. All 3 of these computers have different forms of data on them.
My plan that has worked so far, is as follows:
1. Share all of the data among your network, but MAKE IT READ ONLY!
This is very important. If you have a rogue virus (or user) that gets into your network you don't want them to be able to delete any of your source backup files without having to actually infiltrate the source computer itself. That being said you also need access to the files from a central location to actually execute your backup jobs.
2. Buy a very big hard drive, make that a very big EXTERNAL hard drive.
Internal hard drives are great, and usually pretty fast. They are also more susceptible to internal energy bursts, subject to damage from other computer failures, and just shouldn't be on any of the machines you intend to backup (physically on them that is). Don't share this drive from whatever computer you connect it to, and certainly don't make it a writeable shared drive. My current drive is 740GB. I will need to replace that within a year as my data grows.
3. Backup on a regular basis, BUT NOT AUTOMATED!
This is one that often confuses people when I tell them not to have an automated backup. My reason is a good one, and one that I have actually seen a good number of times: An automated backup tool works great to mirror your data, but it WILL mirror your data. In other words, if someone deletes all of your shared drives, it will mirror those deletions. If you are not doing a mirrored backup then you are good to go however you would like having it automated. Another reason for me saying not to have it automated is so you actually pay attention to the backup. Look at the logs, see if things are breaking, be proactive in your defense! I use NerdyHearn backup which is about as simple as the backup programs come. It is consistent, and can do both mirrored and non-mirrored backup. There are also a number of more advanced backup programs out there.
4. Make physical backups of your data on a regular basis
I have reminders set for every 6 months to do a physical backup of ALL of my data. It is very important to do this in case your backup and primary systems somehow fail (can anyone say Magnolia?). This is generally a large amount of data, and will require a large number of DVDs, but I assure you if you lose all of your data and backup one day you will be glad that the largest window you could have lost is a 6 month period.
5. Make another off-site backup
This may be getting a little compulsive, but if you have very important data, such as work data or personal projects, etc, I would recommend making a 3rd backup. I use an off-site (this is very important in case of fire, etc) FTP server, but there are many affordable options out there as well. Namely box.net, Mozy, and Amazon's S3 for the nerdy ones out there.
6. Be an asshole
Maybe you already are, but if you're not, do it. Don't share your information. Don't share your backup locations. Don't give anyone access that doesn't need it. Don't expose an entire server on your home network to the world. Audit your incoming network connections. Firewall everything. Anti-virus everything. Anti-virus everything again. Did I mention you should be using anti-virus? This list can go on and on, but you need to be incredibly defensive. I had an SQL server open for less then a day setting up my network last time I did a re-install, and had over 50,000 connection attempts on the sa account from over 100 different machines. That tells you people are looking, and they will find it if they keep trying (and if you leave it open long enough).
That's all for now. Have any other suggestions? Post away my friends.
Backin' Up Tom Out.
Recursively removing SVN bindings with PowerShell
Setting up a real VPN with your every day consumer router and DD-WRT
Changing SVN Server URL Client-side using Relocate
Daily Backup Script
Tom said on Thursday, February 5th, 2009 @ 6:52 PM
@kevin sorry I don't have any other recommendations. I know I used to use SyncToy back in the day before I wrote my own. And yes, you would host your hard drive on a single machine and have everything write to that disk from all your shared drives.
kevin said on Tuesday, February 3rd, 2009 @ 7:26 AM
also, if all my shared drives and folders are read-only, where do my backups go (since they need write access)? Do you store all backups for all machines on that one 740 GB disk?
kevin said on Tuesday, February 3rd, 2009 @ 7:24 AM
Nice post Tom. Any recommendations for other backups tools/software other than NerdyHearn Backup? ;)
Add A Comment
Email Address: (not public, used to send notifications on further comments)
Enter the text above, except for the 1st and last character: