Real World Computing
Restore to basic backup
But, of course, Restore does far more than just this. For starters, it allows you to schedule backups and, naturally, to restore them - you can choose individual files to restore, or to restore an entire backup set. When you choose to restore, you can either restore files to their original locations, into a new directory, or you can download a zipped archive containing just the files you've selected. This actually downloads the ZIP file to the machine on which you're running the backup client, allowing you essentially to restore files from one machine to another. Restoring files from earlier backups is just as simple, and occurs via a pop-up menu that gives you an option to restore files from any point in time.
It's great to see that Restore includes a built-in system for backing up MySQL databases, which is one of the things that a lot of people seem to forget to do. It basically employs MySQL's own mysqldump command to do the hard work, creating a different file for each table in the original databases. When you investigate the file structure on the Restore server, you'll see all files are simply copied across and no compression is performed, so you'll need to make sure your Restore server has plenty of available disk space. This fact does, however, mean restores can also be performed via WebDAV, so you won't even need to do them via the web interface if you don't want to.
While the fact that Restore's backups aren't compressed means you'll require more total disk space than with some other backup solutions, it's worth pointing out that Restore performs incremental backups, so the entire system doesn't have to be copied every time - only those files that have changed since the last backup will be copied. And because the program uses no strange, proprietary file formats, any administrator with access to the backup server can see exactly what's been backed up and can add more disk space to the system as required. Furthermore, Configuring the system to use a different location for backups is as simple as editing a six-line configuration file in /etc/restore.
Restore certainly isn't perfect - we did run across a couple of minor issues while backing up Macs, although nothing we couldn't solve - but its developers seem very responsive on the support forums. One key concern is the amount of bandwidth and disk space the program uses, because it performs no compression, and the developers say they're working on native clients that will address that issue. However, some people will see the current lack of any required client as a benefit rather than a problem, since it means small workgroups can have their backups configured remotely by the system administrator without a great deal of work. Which means, of course, now you've really got no excuse for not backing up all your systems!
Overall, we can wholeheartedly recommend Restore for small groups of people who want basic backup and restore functionality, and who aren't worried about things such as dumping backups to tape and the like. We're planning to roll out the system to one of our customers next week, having done plenty of testing on our own network, and we'll let you know how it goes over the coming months.
JavaScript Toolkits
Part of the work we do, both in the UK and the US, is building websites. More specifically, right now I'm building an intranet system for a PR company, which will be required to handle all of the PR campaigns the agency runs. This company already has a website, where journalists are encouraged to sign up to receive a weekly email newsletter, but the problem with the current system is that the actual campaigns are run using a mixture of Excel spreadsheets, hand-rolled (and very primitive) FileMaker Pro databases, and a great deal of sticky tape and prayer. The PR company asked us to build them a new, all-singing, all-dancing, web-based campaign-management system and we jumped at the chance, as it's the sort of interesting project that actually gets us fired up (yes, I know, we need to get out more).
