More fun with mount points

Last fall I wrote about a mistake from years past where goofing up mount points on a filesystem could really cause some interesting side-effects. Well quite by accident I stumbled into a fun new way to blow up a system while working on yesterday's problems.

First a bit of background for those who are not familiar with UNIX style mount points. Before a disk is mounted on a UNIX system the place it will be mounted looks like a plain old directory. On OS X these directories are collected in /Volumes so there will be a set of directories here representing the various disks and the disks themselves will be mounted on top of these directories. So with disks named Ranch and Barn the directory looks like /Volumes/Ranch and /Volumes/Barn. It is with these directories that SuperDuper was off and running to replicate Ranch to Barn.

After dinner in the satiated hopefulness of the twilight I mis-read SuperDuper's screen to suggest the task of copying data was complete. The realization this was incorrect came before the actual reboot but after the disks had been renamed. The disk formerly named Barn was now named Ranch and the disk which had been Ranch had taken the name Shed. Since the disk now called Shed was the original boot volume it's /Volumes directory was the directory that mattered here. All the time this was happening SuperDuper was still running. It was faithfully copying files from the boot volume to /Volumes/Barn. Of course this was no longer the mount point of a disk but a plain old directory with no volume mounted.

The long and short of all this is we now have the boot disk replicating itself to a directory on the boot volume. SuperDuper notices that the volume has new data and replicates this into the tree created under this directory. A wonderful recursive loop. Fortunately on the Nambu front things are going much better.