Fixing My Broken Vista “Time Machine”

analysis
Oct 31, 20073 mins

In my previous entry, I lamented how I had come *so* close to achieving a "Time Machine" like experience under Windows Vista only to be tripped-up by some lame decisions on the part of the Windows Storage Team. Since then, I've implemented a workaround that I believe delivers the benefits of the "Time Machine" model without causing me to lose important code files to the overly aggressive Windows File Backup filt

In my previous entry, I lamented how I had come *so* close to achieving a “Time Machine” like experience under Windows Vista only to be tripped-up by some lame decisions on the part of the Windows Storage Team. Since then, I’ve implemented a workaround that I believe delivers the benefits of the “Time Machine” model without causing me to lose important code files to the overly aggressive Windows File Backup filters.

My solution: ZIP archives. While Vista File Backup deliberately skips over code files that it considers part of the OS (e.g. ASP.NET pages with the .aspx extension), it’s more than happy to pick-up ZIP archives containing these pages (assuming, of course, that you check the “Compressed Files” option in the Backup utility’s UI). Now, to ensure that all of my source code files are included in the file set, I simply create a ZIP archive of the underlying folder structure prior to the backup. Problem solved.

It’s also worth noting that, while Backup ignores the code files, the Volume Shadow Copy service still creates snapshots of them whenever a Restore Point is triggered. So even though I can’t directly access a Previous Version of my .aspx files via the Backup mechanism (hence the aforementioned ZIP files), I *can* access them from the Shadow Copy storage on the local volume.

Another tweak I applied: Altering the Automatic Backup schedule. By default, Windows Vista File Backup provides a limited set of schedulable intervals: Daily, Weekly, Monthly, etc. However, the scheduling logic itself is managed by the Windows Scheduled Tasks service. Modifying the Backup schedule – for example, so that the automated backup runs hourly instead of daily – is a simple matter of opening Scheduled Tasks and changing the backup task’s Triggers configuration to a “Run Once/Repeat Hourly/Continue Indefinitely” scenario.

And that’s how I have my primary development workstation configured today. Windows File Backup is configured to do an incremental file backup every hour, using my WD 160GB portable hard disk as the target. The backup process itself runs in the background, using low-priority I/O calls so that it doesn’t disrupt my active workload (i.e. I can continue writing code/articles and listening to my MP3 collection while the File Backup utility toils away in the background). I get a small indicator icon and balloon notice on the Task Bar Notification area when the backup starts and another when it completes. Otherwise, I have no idea the backup is taking place (unless I’m watching my hard disk activity light).

Furthermore, since the Windows Vista File Backup utility leverages Volume Snapshots, I don’t have to worry about open data files or email stores. I get a seamless, zero-touch backup mechanism that actually does “Time Machine” one better by providing both offline/external and locally-hosted online backup of my critical files and data. Now, when I take a break for lunch or make that quick trip to the market to run errands, I simply unplug my portable disk and leave my PC behind, safe in the knowledge that, no matter what happens, I’m at most an hour away from full restoration.

Mission accomplished. Take that, Apple! 🙂