For work I'm trying to back up a networked file server. It's running Windows Server and serving all the files in our office. We have external drives to back it up to we just need some software to automate it for us. What kind of general recommendations can the SF crowd make as to what piece of software we should use and best practices for backing up a company networked file server?
migrated from stackoverflow.com Feb 4 '11 at 17:37
This question came from our site for professional and enthusiast programmers.
General statements re: backup
I'm not going to get into specifics of backup technologies, software, operating systems, etc. in this part. Nor am I going to get into specific techniques and policies (various rotation schedules, using synthetic backup, etc). I'm going to stick to basics here, but I'd advise you, once you understand the basics, to dig deeper into how the requirements of your environment affect your needs.
Above all else, the point of backup is to be able to restore data. We don't run backups for backup's sake. Above all else you need to know that your backup strategy (including the specific data storage technology used, the software used to perform the backup, your media rotation strategy, and all the other factors that go into making your backup strategy work) will actually work to allow you to restore data. This means that you need to test your backup strategy under as close to real world conditions as you can to be sure that it really works. The time to test your backup strategy is NOT when you have a real need to restore data.
Backup should provide several basic attributes:
When you're evaluating specific technologies (disk-based backup, tape backup, online backup, etc) and specific backup strategies (grandfather / father / son media rotation, daily differential and weekly full backups, etc) think about how the interplay of software, hardware, and procedure work together to create solutions (or problems) that help (or hinder) fulfilling the requirements of backup. There are no blanket "right answers" and it varies for each business and, within a business, for different types of resources being backed-up.
Specific application software may have its own requirements that affect how to your run backups. Database servers (and database-like servers, like Microsoft Exchange) have their own peculiarities that you may have to contend with when designing your backups strategy.
Storage and filesystem features, like snapshots or live duplication, may help you perform backups of "live" data under tight windows.
Your specific needs
In the case of your specific application you describe you should probably look at how the built-in Windows Image Backup functionality can help you protect the operating system, configuration, and data. The built-in backup functionality isn't very sophisticated when it comes to policy and scheduling, though, so you may want to evaluate third-party software offerings (Symantec Backup Exec, CommVault, Bacula, etc) if you need a more sophisticated solution.
Talk to the people who store data on your server and find out what their tolerance is for data loss, what kind of retention windows they'd like to have, what their security concerns are, and what type of restoration timeline is required to help justify the budget for hardware, software, and labor. I'd strongly urge you to consider an off-site component, as well. Perhaps you'll find that using hard disks for off-site storage works well, but I'm personally of the opinion that there isn't an "enterprise ready" hard disk-based backup solution yet (one that's cost effective, reliable, and that operates consistently).
Or in short, for small businesses on Windows: use the built-in windows backup tool to write an external hard disk (preferably on an eSATA connection or in a SATA tray. The Windows backup tool can take advantage of shadowcopy to get copies of files even when 'they are open'. If this is of no concern to you, then you could even use robocopy to speed things up.
For disc encryption, you can use truecrypt: you can set it up so that it automagically opens up the encrypted volume when connected to a trusted machine (keys are the key :-) ).
Do read and think about the longer answer, because backups need to be thought about and managed, in order for them to be useful when they are needed.
Great answers so far. I recommend you look into Bacula and its guides and how-tos.