With the Linux kernel version 2.6.14 a technology called FUSE was merged into the mainstream Linux kernel. FUSE stands for Filesystem in Userspace and it allows normal, non-privileged users to create their own filesystems.
Amit Singh (author of the book Mac OS X Internals) ported this great technology to the Mac: MacFUSE.
Technorati Tags: MacFUSE, sshfs
You now may think “Wow. And what can I actually do with that?”.
MacFUSE itself is less interesting for the end-user but its filesystem implementations are stunning.
Think about your picasa-account (Picasa is Google’s online photo album service). Wouldn’t it be nice if you could manage your published photos as if they were on your local hard-drive, move them via drag-n-drop, or delete them like normal files? Well, with MacFUSE you can.
Have a look at Amit’s Tech Demo Video and see what’s possible with MacFUSE. It’s really great.
But what’s really important for me is the sshfs filesystem implementation. Every day I have to connect to several servers via ssh and move files from one machine to another. While this isn’t really a problem (thanks to Transmit) it would be more convenient if all those machines were mounted locally on my MacBook.
So, let’s install MacFUSE and sshfs and see what happens. Proceed at you own risk. This technology is still under development and I don’t know how stable it is.
You can find all the needed files here.
Let’s begin with the MacFUSE-Core kernel extensions.
Download the MacFUSE-Core-0.2.2.dmg, mount it and run the installer. After the installer finished reboot the system so the new kernel extensions are loaded.
To mount remote computers via ssh the sshfs implementation is also needed.
Download the file sshfs-0.1.0.dmg and mount it. You’ll see a normal Mac OS X Application called sshfs. Copy it to your Applications-Folder, run it and a small window will pop up where you have to type in your server address and your user name. A few seconds later another window will pop up where you have to type in your password.
If all worked right a new volume will show up in Finder. Voila.
You can close the sshfs-Application if you don’t want to connect to additional servers. The mounted Volume won’t disappear.
To unmount simply click on the eject button in the Finder.
Wow, that is really easy.
For the more experienced users there is also a command-line binary which allows a finer configuration. The binary is located in the sshfs.app/Contents/Resources-Directory and is called sshfs-static. If you plan to use it regularly you should link it into /usr/local/bin:
$ sudo ln -s /Applications/sshfs.app/Contents/Resources/sshfs-static \
/usr/local/bin/
To mount a remote server you first have to create a directory which will be an alias to the volume:
$ mkdir /some/directory
After that you can run sshfs-static with following parameters to mount:
$ sshfs-static user@remote.server:/remote/directory /some/directory \
-oreconnect,ping_diskarb,volname=volumename
The reconnect-option allows sshfs to reconnect if your network was down.
ping_diskarb allows the newly mounted volume to play better with the Finder.
volname= can be used to name the new volume.
There are a lot more paramteres. sshfs-static -h shows you a list.
To unmount the volume at the command-line use:
$ umount /some/directory
Really great. A big thank you to Amit!

Wow, just got it working like a charm following your instructions. Thanks so much for writing it up!