Time Machine sucks, use rsync instead
Mac OSX has a great built-in feature called Time Machine, which is designed to provide simple backup & restore functionality for your system. Time Machine does more than just keep a most-recent backup handy; it keeps track of changes to your files on a regular basis, and allows you to go back in time to a prior state of your filesystem to recover files that were lost -- even those that were deleted intentionally.
Time Machine can write backups to an external drive (USB, FireWire, or Thunderbolt), or to a network device. Apple sells a network device called Time Capsule that works with Time Machine, but other vendors also provide NAS devices that integrate directly with the Time Machine software on the Mac client.
I've been Mac-only at home for six years, and have used Time Machine ever since it first appeared in Leopard, in 2007. Last year, I upgraded my backup strategy to point all machines to a Synology DS411j NAS. This has been an awesome little device, and I use it for more than just backup/restore.
Backups are pretty darn important
Your data is really important to you. Trust me. Maybe it's your family photos or home movies. Or tax returns. Or homework. Whatever it is, it's critical you keep at least two copies of it, in the event of accidental deletion, disk failure, theft, fire, or the zombie apocalypse.
Scott Hanselman has a nice writeup on implementing a workable backup and recovery strategy. I've done that, and you should do the same. If you use a Mac, Time Machine should be part of your strategy, and it's a heck of a lot better than no backup strategy at all. But be very wary of Time Machine, because it ain't all roses.
Time Machine, In Which There Are Dragons
Time Machine is quite clever, and uses UNIX hard links to efficiently manage disk space on the backup volume. Backups are stored in a sparse bundle file, which is a form of magic disk image that houses all backup data.
But, I swear, it is sometimes just too magic for its own good. It is decidedly not simple under the hood, and when it fails, it fails in epic fashion. See this for some examples.
I've had at least five backup failures that I blame on Time Machine in the past four years. In OSX Lion, one kind of failure shows up like this:
There is no recovery option provided to you. If you say "Start new backup", it deletes your old one and begins anew. If that's terabytes of photos/video/music/whatever, be prepared for a very long wait. Perhaps days, depending on your backup data set size, network speed, disk speed, and phase of the moon. Okay, maybe not the last part, but you never know.
And in the meantime, your backup system is gone. At this point, it is obvious that having data in at least three places is necessary. (Note that there are techniques for repairing the Time Machine backup volume. Dig out the solder and oscilloscope first, though).
You didn't do anything, but Time Machine broke. That is completely unacceptable for a backup system.
It's quite possible that I'm doing it all wrong. And the problems may not be Apple software errors; they may be a function of Apple+Synology, or just Synology. But that is beside the point. Any backup strategy that can fail and irrecoverably take all your data to Valhalla is a horrible strategy. I need something that cannot fail.
A better strategy, with 73% less insanity
As it turns out, I have never really cared about the save-old-versions-of-files feature of Time Machine. I have used it to recover entire volumes -- twice, both during machine upgrades. Recovering an inadvertently deleted file is rather rare for me, but I suppose I do care about that feature a little bit.
Time Machine sparsebundle files are opaque to the average user. You cannot open them up, peek inside, and grab the files you need. You need the Time Machine client, and when it encounters an error with the backup file, it offers no choice but to abort and start over.
This is why I use rsync. With a little bit of Time Machine still involved for added spice. You know, just to keep things interesting.
Plus, rsync sounds cooler.
Rsync is a command-line tool, available for several platforms, and included with Mac OSX. In its simplest form, it just copies files from one place to another. But it can also remove files no longer needed, exclude things you don't care about, and work across a network, targeting a mounted volume or a remote server that supports SSH. Which is how I use it.
The end result of an rsync backup is a mirror of your source data. Readable by anything that can read the format of the target filesystem. This part is critical. Backups are irrelevant if nothing can recover them. A bunch of files in a directory on a disk is accessible by just about everything. Time Machine sparsebundles require Time Machine, on a Mac. Files in a directory can be read by any app or OS. Thisincreases your odds of recovery by, well, a lot.
I have a few computers around the house. Our primary family computer is an iMac, and has one internal disk and two USB external disks. The internal disk has all the user folders, documents, applications, and OS files. The external drives contain photos, movies, music, etc.
My backup strategy has the internal disk backed up to my NAS using Time Machine, and the the external disks backed up to the same NAS using rsync.
Some notes:
- The Internal HD volume is less than 100GB, and the backup executes automatically every hour.
- I wrote simple shell scripts to automate the rsync commands. I execute the rsync scripts manually, but these are easy to automate.
I won't go into too much detail on rsync usage (some resources that might help: 1, 2, 3), but here's how I backup an entire external volume using rsync:
rsync -av --delete --exclude ".DS_Store" --exclude ".fseventsd" --exclude ".Spotlight-V100" --exclude ".TemporaryItems" --exclude ".Trashes" /Volumes/your-local-volume-name-that-you-want-backed-up/ user-name@backup-server:/volume-name-on-server/path-on-backup-server
The -av says "archive, with verbose output". The --delete option says "get rid of anything on the server that's no longer on my local machine" (be careful with this one). The --exclude options allow me to avoid backing up crap I don't need. The username stuff allows me to log in to the server and perform the backup using that identity on the server.
Summary
Rsync can fail with network or disk hardware errors. Time Machine can fail with network, disk hardware, or buggy software errors. I prefer rsync for the really important stuff, and use Time Machine for the OS disk, which is relatively small and something I can recover from quickly after the inevitable Time Machine error.
TweetLRMS band concert – December 2011
A few videos from the Laurel Ridge Middle School band concert, held on December 14th, 2011:
Intermediate band
Jazz band: September
Jazz band: Greensleeves
Jazz band: My Favorite Things
Jazz band: St. Thomas
TweetiPhone camera roll bug makes photos unavailable, hack your way to a fix
TL;DR ... scroll down for a solution.
What happened?
My iPhone 4 with iOS5 started failing in a peculiar way a couple of weeks ago. I could take still photos and video without any trouble, but the camera roll display (in the Photos app) would fail to show thumbnails correctly, and attempts to pull the images onto my iMac wouldn't work. Both iPhoto '11 and the Image Capture app on Mac OS 10.7 could see my iPhone, but said that there were 0 photos on the device.
Really, I just wanted to get my photos & video off the device. And I couldn't. I tried lame workarounds like emailing photos to myself (worked for photos, but not large videos) and syncing to Dropbox (failed, Drobox app couldn't read photo library ... which is itself a clue).
I needed a real fix. While I don't know what caused this problem in the first place, I have one idea. Read to the end to find out.
Symptoms
Here's what the thumbnail view looks like:
![]()
As you can see, several blank images, and several thumbnails are duplicates. Funny thing is, you could select items and see the correct image.
In the Settings app, under General | About, the number of reported photos is off the charts. Geeks will recognize this as a rather special number.

Finally, iTunes shows some space used by "Other". This is close to the amount of space used by my photos & videos.![]()
Solution
After Googling a bit with no clear solution in sight, I turned to Twitter. @jkubbeaver had the same problem, and stumbled upon a solution that worked for him, documented here. In case that link vaporizes, here's a summary:
- Download and install iExplorer, which allows you to manage the filesystem of your iPhone.
- Fire up iExplorer with your iPhone connected via USB cable, and, as a precaution, copy photos/videos from the iPhone's DCIM folder to your computer. At this point, you now have the files you want, but you still need to fix the underlying problem.
- Navigate to the iPhone's PhotoData folder, copy the com.apple.photos.caches_metadata.plist, Photos.sqlite, and PhotosAux.sqlite files to your computer (again, as a precaution), then delete them from the iPhone's PhotoData folder. This deletes the iPhoto camera roll database and thumbnails, but does not delete the photos themselves.
- Reboot your iPhone, navigate to the Photos app, and let it rebuild the camera roll database automatically.
At this point, all should be back to normal. This solution worked for me.
Addendum: why did this happen in the first place?
I'm not sure yet. When I upgraded to iOS5, I did not initially enable Apple's PhotoStream service. After a few days, I enabled PhotoStream to give it a try ... and then started seeing the symptoms. Is PhotoStream to blame? Unsure, but it's the only thing that I can remember changing between "no problem" and "problem". YMMV.
TweetLRMS marching band at the 2011 Portland Rose Festival Junior Parade
Ben wasn't really looking forward to this, but I think he enjoyed it after all. Good stuff, Ben!
Laurel Ridge Middle School marching band at the 2011 Portland Rose Festival Junior Parade from Brian Windheim on Vimeo.
TweetBen’s band performs “Seven Nation Army” from The White Stripes
Ben's band Audio Rampage performs Seven Nation Army from The White Stripes. Bailey (drums and vocals) simply owns the crowd.
TweetBen’s band performs “Hate To Say I Told You So” from The Hives
Ben's band Audio Rampage performs Hate To Say I Told You So from The Hives. Great stuff, guys!
TweetBen’s band performs “Howlin’ For You” from The Black Keys
Ben's band Audio Rampage performs Howlin' For You from The Black Keys. This recording is for the Small Town Big Talent competition here in Sherwood. Nice work guys!
TweetRaindrops to Refuge charity dinner concert
Ben Windheim and Myron LeRoy were the musical entertainment at the Raindrops to Refuge charity dinner on Friday. A great selection of tunes, and some great guitar work by these two guys.
Ben Windheim and Myron LeRoy at the Raindrops to Refuge charity dinner, February 25 2011 from Brian Windheim on Vimeo.
TweetBen plays the Smashing Pumpkins
Ben was playing his guitar in his room yesterday, and I happened by with my iPhone. Grabbed some quick video of him midway through the Smashing Pumpkins Cherub Rock. Rock on, Ben!
TweetCheap homemade pickup for your acoustic instrument
I have several acoustic stringed instruments. I'm not very good at playing any of them, but I have a lot of fun trying. Mandolin, ukulele, banjo, and a handful of guitars.
When playing with a drummer or trying to get a recording, it's nice to be able to plug in an instrument and get some extra volume. Plus, with an electrified instrument you can always add pedals, post-processing, and other effects to alter the sound a bit.
I've done a permanent install of an under-saddle pickup on a guitar before, but I didn't want to spend the time or money on each instrument to get all the instruments upgraded.
I'd heard about homemade piezo-transducer pickups before, so I thought I'd see if I could make one my own. Sure, you can buy cheap ones, but where's the fun in that?
So, I made one myself. Total cost was under $6. Here's the finished product, in all it's DIY glory:
Parts list
1. Piezo transducer. Radio Shack part number 273-0073.
2. 1/4" mono jack. Radio Shack part number 274-0340.
3. A length of 2-conductor wire. I used some leftover 18-gauge wire from a garage door opener.
4. Some electrical tape.
5. Some blue painters tape.
Tools aren't required, but a wire stripper and a solder gun are useful.
Assembly instructions
1. Remove the transducer from the plastic housing. I used a small slotted screwdriver to pry the top off. Be careful, or plan on another trip to Radio Shack and another $3.

2. Strip insulation from both conductors on each end of the wire.
3. Connect the two leads from the transducer to the two conductors on one end of the wire. Insulate bare wires with electrical tape.
3. Disassemble the jack.

4. Slide the jack housing over the other end of the wire.
5. Connect the conductors on that end of the wire to the two connection points on the jack internals. Solder or tape the conductors in place.
6. Screw the jack housing onto the jack internals.
Connecting the pickup to the instrument
I used blue painters tape to affix the transducer to the top of my mandolin, just below the bridge. Test out several locations on the top and back of the instrument for best sound.
On my ukulele, the best-sounding location was on the back:

When finished, plug in, grab a beer, and bask in your electrified awesomeness.
If you're bored, listen to my first electric mandolin recording experiment: Ashokan Farewell, recorded as two A/B inverted parts using my standard recording tools.
Tweet


