Monday, Amit Singh and team announced the release of MacFUSE 2.0 at a Google Open Source Developers speakers series. MacFUSE 2.0, based on the FUSE (filesystem in userspace) project that is popular with the Linux crowd, is a major update to the framework that provides support for alternate filesystems like NTFS in Mac OS X. The visible change to MacFUSE 2.0 is the addition of a new preference pane in System Preferences to make it simpler for end users to update MacFUSE or remove it entirely.
The significant changes are under the hood and are of interest to developers that are looking to create support for new filesystems. MacFUSE 2.0 adds experimental support for Snow Leopard and 64-bit systems (Leopard only), allows for Dtrace support for performance tuning, new Xcode project templates to help devs get started, debugging hooks and new function calls. You can get the full details in the changelog.
If you aren’t familiar with MacFUSE (or FUSE in general), this software extends the filesystem support that is built into the Mac OS X kernel by acting as a bridge between the operating system and non-native filesystems. MacFUSE understands all the access methods and rules for working with a particular filesystem and then presents that information so that it looks like and works like a regular volume in OS X. MacFUSE does not include support for any particular filesystems out of the box, it is a framework that allows developers to write “drivers” for filesystems. The interesting thing about this framework is that it allows for presenting all kinds of information as a filesystem so that it shows up in the Finder as folders and files, when the original data might be available via SSH, FTP, iTunes, Spotlight searches and so on.
The most common use of MacFUSE is to provide support for NTFS volumes by using NTFS-3G for Mac. OS X has read-only support for NTFS volumes built-in, but this precludes you from writing anything to a NTFS-formatted drive, including the Boot Camp partition on your Mac. MacFUSE and NTFS-3G give you full access to these volumes. Follow the userguide to install the NTFS driver.
If you’re interested in writing your own filesystem driver for MacFUSE, you can see Amit Singh’s example of a virtual 512TB file to start learning. Keep your eye on the MacFUSE Google Group to see when the video of the introduction is available online as Amit Singh walked through some examples during his presentation as well.