Saturday, December 6, 2008

NTFS-3G 1.5130

What's new:
  • Fix: Reading a data storage with permanent or temporary physical damage, or a partial read(2) system call could result ignoring the low level hardware error and returning invalid data. Upgrade is recommended.

  • Mac specific: Read-only mounts now have a better chance of succeeding, as the driver now properly parses the probe arguments.

  • Mac specific: All global settings have been moved out of the mount script and into the preference plist file /Library/Preferences/org.catacombae.macntfs-3g.DriverSettings.plist
Download NTFS-3G 1.5130 [ublio] (performance patches applied)
Download NTFS-3G 1.5130 [stable]

Packaging, patching, some OS X-related development and testing is done in the context of my development efforts with the Catacombae projects.

Requirements: Mac OS X 10.4/10.5, a PowerPC or Intel computer, MacFUSE 1.7 or later installed.
This package has been tested with OS X 10.4.11/Intel and OS X 10.5.5/Intel.

Information on how to install and use NTFS-3G for Mac OS X can be found in the User Guide.

Known issues:
  • Files with filenames created in Windows containing international characters with accents, umlauts and similar dots and lines, or filenames with korean characters might seem unreadable in the Finder. This is because Finder apparently expects all filenames to appear in unicode decomposed form, while NTFS allows both composed and decomposed form filenames. This issue is hard to solve in a pretty way, but you should still be able to access these files when using the Terminal. For me, copying the affected files to a HFS+ drive using the command "cp" worked fine.

  • After installing ntfs-3g, all NTFS drives will disappear from the "Startup Disk" preference pane. Disabling or uninstalling ntfs-3g brings them back. I don't have a solution for this, but you can still choose your startup drive by:
    • Holding down the Option key during boot (or Alt for non-Apple keyboards).

    • Intel users only: Install the rEFIt boot manager for better control of the boot process.

    • Using the command line utility bless (see man bless for more information)
    If you have any information on a pretty way of solving this issue, I'd love to hear about it.

Sources:
ntfs-3g 1.5130 (patched)
ntfsprogs 1.13.1
fuse_wait.c
ntfs-3g_daemon.c

11 comments:

Anonymous said...

Great work, Erik! The Mac community needs you!

Anonymous said...

agreed. many thanks erik, your work is greatly appreciated!!

Rae Dragon said...

i have 10.4.11 on my mac and downloaded ntfs-3g 1.5130 in order to mount a file formatted on windows. it worked great and everything was happy. but upon my second use of the external drive the program said it was now unable to mount it. i need to get into this, and write files onto it. how can i go around this?

Erik said...

Rae Dragon:

Did you read the user guide section about mounting/unmounting? (You need to properly unmount the drive after using it in Windows, through "Safe remove hardware")

Jed said...

Looking forward to trying, tnx heaps! Had a no. of issues w/previous build that I didn't get round to fully resolving/testing with devs (they wanted me to try few things). Maybe they've already nailed the source of the prob.

lauph said...

Hm. Any advise about wether or not to upgrade to MacFUSE 2.0?

Erik said...

lauph:

The general advice is: If things work well for you with your current configuration, don't upgrade. :)
I did upgrade however, and things seem to be running smoothly with the current NTFS-3G build and MacFUSE 2.0.

The next release will be compiled against MacFUSE 2.0, and I won't be recommending anyone to keep using an older MacFUSE version.

lauph said...

Sure, it ain't broken, not fixing it. :)

Thanks for all the work. Really appreciated.

Anonymous said...

Erik, nicely done! One thing - and it hasn't affected operation (yet) but thought you might want to know: I'm getting a crashdump message from the ntfs-3g_daemon and it's from not really doing anything (mounting, creating a directory, copy a small file, removing directory and unmounting). It's writing this to the crashlog:


Date/Time: 2008-12-10 11:10:34.166 +0000
OS Version: 10.4.11 (Build 8S2167)
Report Version: 4

Command: ntfs-3g_daemon
Path: /usr/local/bin/ntfs-3g_daemon
Parent: launchd [1]

Version: ??? (???)

PID: 1101
Thread: 0

Exception: EXC_BAD_ACCESS (0x0001)
Codes: KERN_PROTECTION_FAILURE (0x0002) at 0x00000000

Thread 0 Crashed:
0 libSystem.B.dylib 0x9010c802 _malloc_initialize + 992
1 libSystem.B.dylib 0x900028d7 malloc + 29
2 libSystem.B.dylib 0x90010e60 __smakebuf + 195
3 libSystem.B.dylib 0x90010d65 __swsetup + 133
4 libSystem.B.dylib 0x9000ac99 __sfvwrite + 57
5 libSystem.B.dylib 0x9007ca0e fwrite$UNIX2003 + 117
6 ntfs-3g_daemon 0x00002be7 main + 455
7 ntfs-3g_daemon 0x000024a6 start + 54

Thread 0 crashed with X86 Thread State (32-bit):
eax: 0x00000000 ebx: 0x9010c433 ecx: 0x00000000 edx: 0x00000008
edi: 0x00000030 esi: 0xa0001c38 ebp: 0xbffffc18 esp: 0xbffffb80
ss: 0x0000001f efl: 0x00010286 eip: 0x9010c802 cs: 0x00000017
ds: 0x0000001f es: 0x0000001f fs: 0x00000000 gs: 0x00000037

Binary Images Description:
0x1000 - 0x2fff ntfs-3g_daemon /usr/local/bin/ntfs-3g_daemon
0x8fe00000 - 0x8fe4afff dyld 46.16 /usr/lib/dyld
0x90000000 - 0x90171fff libSystem.B.dylib /usr/lib/libSystem.B.dylib
0x901c1000 - 0x901c3fff libmathCommon.A.dylib /usr/lib/system/libmathCommon.A.dylib
0x90bd1000 - 0x90bd8fff libgcc_s.1.dylib /usr/lib/libgcc_s.1.dylib

Erik said...

Anonymous, December 10, 2008 12:17 PM:

This is actually a very serious issue that you have made me aware of! I seem to have accidentially recompiled ntfs-3g_daemon for Leopard only. It won't work at all in 10.4 and even affects system stability as well.

I would advise all users of Mac OS X 10.4 to downgrade to 1.5012 until I have made an update available.

Erik said...

All Mac OS X 10.4 users are urged to update to 1.5130 Update 1, which will solve the issues with a crashing background process and general system instability.