Backing Up Files to a Server

There's more than one way to back up files to a server: You can run a backup program on the client machine and specify a drive and folder on the server as the backup storage location, or you can originate the backup from the server and select files on one or more clients (as explained earlier, client computers are the ones that receive services from a server).

Before you create your backups, you must decide exactly what you want to accomplish. Several different kinds of backups are possible, each of them appropriate for certain situations:

The backup programs provided with Windows, Mac OS X, and most versions of Linux and Unix are entirely adequate for most people, but there are plenty of other backup programs with additional features and options (often related to automatic scheduled backups). Backup programs are often supplied with network-attached storage (NAS) devices and external USB hard drives. The important thing to remember about using any backup program is that you must store your backed-up files separately from the originals: You can store the backup on a second hard drive on the same computer (not a good idea, however, because it doesn't protect against fire or theft); on a set of CDs, DVDs, or data tapes; or on a computer or other storage device connected to the original computer through a network or the Internet. A network is a great way to move your backup data to another computer for storage, but you will still want some kind of backup on removable media stored off-site to protect your data from fire or theft.

Note

The backup methods described in this chapter will work equally well on a network without a designated file server; you can use any other computer or network storage device on the same network as the destination for your backup files.

Microsoft has supplied a backup program with most versions of Windows, including XP and Vista. This example uses Windows XP, but the general principles are the same for any backup program.

To use the Windows Backup program, follow these steps:

To restore data from your backup files, run the same Windows Backup program but select the Restore files and settings option in the Backup or Restore Wizard.

The reason you're making backups is to protect your data against loss or damage. The most common problems that will destroy your original files are caused by either human error—you really didn't mean to reformat that hard drive, did you?—or damage to a disk drive. When either of those events occur, restoring the files from a network server is easy enough, but if you lose your files because of a fire, a power surge, a lightning strike that damages the server along with the client computers, or some other major disaster, the backup files on the dead server won't do you much good. Therefore, creating at least one set of backup files on a set of DVDs, tapes, or removable hard drives and storing them in another location such as a friend's home or office or a safe deposit box at your bank is always good practice.

The same general principles apply to creating and restoring backups on a Mac: Make backups on a regular schedule and store the backup files on a file server, removable media, or both. The Time Machine program included in OS X can automatically create backups to an external drive or a networked drive, as shown in Figure 9-9. Several alternative Mac backup programs can also send backup files to a network, including:

SuperDuper! http://www.shirt-pocket.com/SuperDuper/SuperDuperDescription.html
Synk Backup http://www.decimus.net/comparison.php
iBackup http://www.grapefruit.ch/iBackup/
.Mac Backup http://www.mac.com/1/solutions/backup.html

Before you trust your critical files to any backup program, run some tests to confirm that the program can accurately restore those files, including the metadata embedded inside them. Some Mac backup programs designed for earlier versions have trouble dealing with OS X files.

Linux and Unix users have a wide choice of backup programs, including several that can originate the backup process from either the server (pulling backup data from client computers) or from individual client computers (pushing the backup files to a server). The Linux Online! website includes an up-to-date list of backup programs at http://www.linux.org/apps/all/Administration/Backup.html. Distributions with graphic environments such as Gnome and KDE usually include at least one graphic backup program. One possible backup solution on computers running Linux, Unix, or Mac OS X is to use rsync over SSH to an external system, and schedule it via cron. This doesn't have a nice graphical front end, but it gets the job done securely and efficiently, because rsync does not copy bytes across the network that already exist on the other side—it only copies the "changed" bytes.

Server-side programs run on the server and collect backups from each client computer. BackupPC is a good choice as a server-side Linux backup program because it can back up Windows, Linux, and Mac computers through a network. BackupPC is available for download from http://backuppc.sourceforge.net.

Amanda, the Advanced Maryland Automatic Network Disk Archiver (http://www.amanda.org/), is another server-side backup program that supports Windows and multiple versions of Linux and Unix.