Sunday, May 27, 2007

Using SymbolicLinker Symlinks to enable SMB share of an iMac OS X attached external drive

OS X Aliases are not useable by SMB clients (Windows machines). They appears as an unrecognized file type. BSD Symlinks, which you can create with SymbolicLinker, on the other hand, are visible to SMB clients. That's useful by itself, but that's only part of the trick I just learned.

I moved the 9 GBs of our image server (slideshow for several machines) JPEGs from my iMac to an external drive to reduce backup of redundant data (the images live in iPhoto Libraries as well) and to provide a bit of redundancy (images live on a separate drive as well as multiple other backups). That was fine for the iMac, but the SMB clients couldn't see them. Default SMB shares only work for the user directory.

Symlinks to the rescue! I used SymbolicLinker to create a symlink to the external drive folder (drive is set to ignore permissions) and put that symlink in my iMac user directory. When I access the symlink from the SMB machine it nicely resolves. The Symlink works below the level of OS X at the BSD level, so it brings BSD Unix behaviors to the file sharing process. That's what I wanted.

Slick indeed.

No comments: