Update 2: Check out this post for a prebuilt binary installer for NTFS-3G that can be used with the Fuse4X solution detailed below (i.e., if you're not willing to go through all the steps of installing XCode, MacPorts, etc. that's detailed below, you can just install Fuse4X binary (from here) and the NTFS-3G installer I'm providing on the post linked above).
Update: Thanks to some suggestions from Marcos on the comments below, I kicked myself back into trying to solve the mount problem with uids/gids on fuse4x / ntfs-3g. I've updated the script below, it now improves things somewhat. It's still not perfect - it'll work fine if your user logs in automatically, otherwise, it'll try to wait for 20 seconds (adjustable on the TIMEOUT variable) until the user session is active and it picks up the user id from the session started, and if that too fails, it falls back to the old behavior (fixed uids/gids). There's also an alternative solution for that provided by Marcos on the comments area of his post, check it out (in portuguese - Google Translate is your friend).
It's a well known fact that OSX had NTFS read support for a long time, but write support could only be easily enabled either by:
- Buying third-party solutions, from Paragon or Tuxera. The latter is actually a product-fied version of the open-source solution mentioned below;
- Enabling manually on the native driver by messing around with system files. That option is known to be very unstable and can potentially corrupt your NTFS partition, so it's strongly NOT recommended. Also, this worked only on early versions of Snow Leopard - apparently Apple disabled this "feature" later (though it seems nobody tried it again with Lion). It's obvious that with this move Apple was clearly saying that the driver is not reliable for write support and should not be used as such.
- A port of MacFuse and NTFS-3G provided by Tuxera. The official versions are old and don't work at all on 64-bit kernels (i.e. Lion).
On the last case, there are unofficial builds of MacFuse that work on 64-bit kernels, but not without a few issues - this post will outline the steps on getting this unofficial version of MacFuse working along with the older version of NTFS-3G (the version that was still free, before Tuxera went completely commercial with it). Also, while most of the procedures detailed here were tested in my OSX Lion installation, it should in theory work on Snow Leopard too, I just have no way to confirm this at this time. Feedback is welcome on that.
I'm also going to outline the steps on getting to work a solution based purely on MacPorts, a package manager for OSX that works by downloading the source code to a package, compiling it on your machine, and installing it. That solution works fine for the most part, with only a small caveat, that may or may not affect you depending on how you work with your Mac. In my opinion, though, this solution is also more robust and (hopefully, once the small kinks get worked out) bug-free solution and easier to maintain and update (thanks to MacPorts) on the long term, and I hope it gets noticed by the developers involved because of that. I'm personally using this solution right now, but due to it being somewhat more cumbersome to setup, it probably should be taken as geared towards power users - if you want something a bit easier to setup, you're probably better off with the MacFuse + Tuxera's NTFS-3G solution presented below.
Read the rest of this post »