Wednesday, May 7, 2008

NTFS-3G 1.2506

Information on what's new in this version of NTFS-3G can be found at the NTFS-3G release page.

Changes on the Mac OS X side:
  • The 'local' option is now used in OS X 10.4, making NTFS-3G mounted hard drives appear as internal drives instead of network drives. The MacFUSE bug that made me disable this option in the first place has apparently been fixed since 1.1.x.
Download NTFS-3G 1.2506 [stable]
Download NTFS-3G 1.2506 [ublio] (patched for improved performance)

Packaging, patching, some OS X-related development and testing has been done by Catacombae Software (i.e. myself).

Requirements: Mac OS X 10.4/10.5, a PowerPC or Intel computer, MacFUSE 1.3 or later installed (1.5 recommended).
This package has been tested with OS X 10.4.11/Intel and OS X 10.5.2/Intel.

Known issues:
  • [serious] Upon shutdown of the system, ntfs-3g fails to unmount properly in reaction to the "terminate" signal that it receives. This means there could be data loss or file system corruption, especially with the ublio build, when shutting down the system without first unmounting all ntfs-3g volumes. It also means that shutting down / restarting the system takes an extra 30 seconds. A solution is being worked on, but in the meantime please remember to unmount ntfs-3g volumes before shutting down or restarting Mac OS X. You could also try ugsasaki's workaround, found among the comments here (I haven't tried it myself).

  • 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. Uninstalling ntfs-3g brings them back. I don't know any workaround or solution for this. Please investigate this issue if you want to help.

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

38 comments:

Anonymous said...

10.5.2 - intel / uninstalled old and installed new (stable) => works like a charm. Thanks a lot for your work! greetings from germany, cacula

Erik said...

cacula:

Thanks for the feedback. Nice to hear that it works well for you.

Everybody are welcome to post a comment even when everything works as expected. That way I can get a clearer view of how well the package works for different people.

Anonymous said...

Thank you for your spended Time.
Greetings from Sunny Dusseldorf/Germany :-)

Anonymous said...

is it recommended to uninstall first before installing a newer version or can you install on top of the older version?

Erik said...

interconnect:

No, that should not be needed. Mac OS X's Installer should clean everything up for you, although I have noticed on a few occasions that some library files (*.dylib) that were no longer used were still lying around in /usr/local/lib . I'm not sure if was the Installer's fault though, I haven't investigated.

So if you're upgrading an existing installation, the worst thing that can happen (as far as I know) is that some unused files might not be removed as they should.
After upgrade you obviously have to unmount your NTFS volumes and remount them in order to use the new version.

Anonymous said...

10.5.2 intel - uninstalled older version and installed new one... but NTFS drive is still ReadOnly (Firewire interface, so I can't even use VMware, that only supports USB).

Erik said...

Anonymous, May 8, 2008 9:34 PM:

Please write your name, or some tag to identify your posts when posting anonymously. Otherwise I can't sort them out from others.

Important: Do you use the stable or ublio build? Have you tried both?

Could you please enable debug logging, restart the system and try again? Enabling debug logging is done by running the script "Enable debug logging" found in the "Tools" folder in the install .dmg file.

When you have done this, check for a file called /var/log/ntfs-3g-debug.log . (i.e. "cat /var/log/ntfs-3g-debug.log" in the Terminal to view it).

Please report back whether or not it exists. If it does exist, I'd like to know what it says.

Erik said...

Anonymous, May 8, 2008 9:34 PM:

Also, I forgot to ask, did the older version(s) work?

Anonymous said...

erik,
is the first "known issue" labeled as serious the same issue that results in the 30 second shutdown or is that a new issue? based off what you said it seems like the same one but just wanted to be sure.

Erik said...

interconnect:

Thanks for reminding me. Yes, it's the same issue.
I just put that info in the text as well.

PSobral said...

The serious issue you posted is confirmed in ALL cases or only in some computers?

Anyway, I used past releases and they worked great. Congratulations and thank you for your time.

PSobral

Anonymous said...

All versions but the chance for corruption was extremely small (never happened for me either). The release note has more details on http://www.ntfs-3g.org

Andrew Stromnov said...

Hi,

Several weeks ago NTFS-3G automounting suddenly stops working on my MPB with external USB Seagate.

Currently partition mounts only thru native NTFS read-only driver.

1) CHKDISK reports no errors,
2) No .ntfs-readonly files on partition.

Logs says:
Mon May 12 00:51:58 MSD 2008: [Probe] Executing "/usr/local/bin/ntfsls" -f "/dev/disk1s5" --path "/.NTFS-3G/.ntfs-readonly"
Mon May 12 00:51:58 MSD 2008: [Probe] Return value: 2
Mon May 12 00:51:58 MSD 2008: [Probe] Output (READONLY): ""
Mon May 12 00:51:58 MSD 2008: [Probe] Executing "/usr/local/sbin/ntfslabel" -n "/dev/disk1s5"
Mon May 12 00:51:58 MSD 2008: [Probe] Return value: 1
Mon May 12 00:51:58 MSD 2008: [Probe] Output (NTFSLABEL_OUTPUT): ""
Mon May 12 00:51:58 MSD 2008: [Probe] returning FSUR_UNRECOGNIZED

All software upgraded to latests versions.

10.5.2, Intel

Any suggestions?

Erik said...

Andrew Stromnov:

By some reason the "ntfslabel" command returns 1, instead of 0, which is what should happen with a normal volume.
I haven't seen that before, but in fact this check is a bit obsolete... I'm not sure it's needed.

See what response you get if you disable the check by editing the file /System/Library/Filesystems/ntfs-3g.fs/ntfs-3g.util and replace line 435:

if ( [[ ${NTFSLABEL_RETVAL} -ne 0 ]] || [[ -n "${READONLY}" ]] ); then

with:

if ( [[ -n "${READONLY}" ]] ); then

You can use the nano text editor, it should be available everywhere. (sudo nano /System/Library/Filesystems/ntfs-3g.fs/ntfs-3g.util)

Erik said...

PSobral:

The serious issue is for all cases, all computers. It's not particularly serious if you use the stable version, as the chance of any corruption is really tiny. With the ublio version though, you may experience that the last file system operations that you did never made it to disk at the time of shutdown because it's still in the memory cache and never got committed to disk.
I have experienced this a few times, copying a few files to the ntfs drive, immediately restarting to Windows and finding that the files aren't there.

Andrew Stromnov said...

Invoking ntfslabel and ntfsls leads to "Input/output error", but mounting thru console works well:
ntfs-3g /dev/disk1s5 /tmp/ntfs

Seagate FreeAgent Pro 750Gb,
USB, primary partition, NTFS, 16Kb per block.

Erik said...

Andrew Stromnov:

Okay, then I guess there might be a bug in the ntfslabel utility. I'm not using the latest version of ntfslabel because of other, newer bugs that are more serious.

Did you try to modify the ntfs-3g.util file as I said?

Anonymous said...

ntfslabel is not relible. ntfs-3g.probe should be used which was developed as a replacement specifically for NTFS-3G for OS X ;-)

Anonymous said...

anonymous @ 11:05,
I believe that was a different bug than the one labeled here as serious.

Erik said...

Szabolcs:

I am using ntfs-3g.probe, don't you worry. :> However, ntfs-3g.probe won't fetch and print the actual label of the drive, or am I misunderstanding something?
I need to get the volume name of the drive and return it to the OS X's DiskArbitration subsystem before the mount, so I can't see any other way than using ntfslabel at the moment.

Anonymous said...

Erik:

Okey :-) Then I try to find the time to add ntfs-3g.label to the next NTFS-3G release.

Anonymous said...
This comment has been removed by a blog administrator.
Erik said...

Szabolcs:

Sounds great. :) Thanks for the effort.
I still rely on a few of these ntfsprogs (ntfscat, ntfsls, mkntfs), so there is still a long way until I can throw them away completely. They may all have similar bugs, but as long as nobody complains I guess there's no immediate reason to fix what isn't proven broken.

Andrew Stromnov said...

erik:

Sorry for delay - I was quite busy last week.

After changing
if ( [[ ${NTFSLABEL_RETVAL} -ne 0 ]] || [[ -n "${READONLY}" ]] ); then
with:
if ( [[ -n "${READONLY}" ]] ); then

automounting starts working again in RW mode with volume label 'Untitled'. Thank you for your help!

Erik said...

Andrew Stromnov:

Good to hear. The check for whether ntfslabel succeeded or not will be disabled in future releases because of this buggy behaviour. This means label lookup will fail silently.

Have you got a label on your drive, and has it shown correctly as the mount point name earlier?

Andrew Stromnov said...

Erik:

Yes, my NTFS partition labeled as '750GB' and this label was shown before.

PS. Probably things goes wrong after I'd reformatted my HD with 16KB blocks instead of standard 8Kb, using Acronis Partition Manager.

Anonymous said...

Dude, you rock!

thanks again

Anonymous said...

Thank you for this utility. Forgive me if this is not the right place to post this. I'm running on a MacBook with 10.5.2. When I copy a file (test.txt) from my mac partition to the NTFS partition, and then reboot into windows XP, there are two files, test.txt, and another called ._test.txt. Is this expected? Can it be turned off?

Erik said...

cvparker:

It's not related to the NTFS-3G driver really, but to the way Mac OS X handles resource forks. A file in Mac OS X consists of two streams of data... the "data fork" and the "resource fork". These "._"-files constitute the resource forks of the files, which is used by Mac OS X to store metadata about the file.

I know it can be annoying, and I think there is a way to turn it off, but you should be looking in a more general direction as this is an issue with all non-HFS+ file systems used under OS X, for instance when you use a FAT drive, or mount network shares.

rocketmouse said...

WOW! Thank you! Not only can I now write to my BootCamp partition again (internal, MacBook 2GHz Duo 10.5.2) but the machine started up noticeably faster. What a bonus! I didn't uninstall anything ntfs-3g that came along from Tiger... because I didn't know how, ahem. Being an 'ancient' DOS-person myself I can just barely follow along. For the person who asked about the resource forks, BlueHarvest might just do the trick. I haven't restarted in Windows yet so I can't say for sure.
I'm assuming I don't need to unmount when it's an internal partition? On the other hand, I did have some problems with 'hangs' on shutdown in 10.4.11 so I'd better ask.

Erik said...

rocketmouse:

The shutdown issue affects all mounted partitions, internal or external. However, if you use the stable version, there's less need to worry about it.

Thanks for the info about BlueHarvest, I hadn't heard about it. I'll try it out some day.

Anonymous said...

Hi Erik,

I'm having trouble
with ntfs-3g.
There are two NTFS partitions which I'm transferring files between..
but strangely, files with UTF8 characters won't transfer over. Putting
pt_BR or pt_BR.UTF-8 in the .ntfs-locale file of both drives doesn't seem to do
anything. Where am I going wrong?

-Thanks in advance.

Anonymous said...

this is really strange
It works with the regular cp command, but not through the apple file manager? Any ideas as to why?

Erik said...

aaron:

If you would have read the "known issues" section in the release post, you wouldn't be so confused. :)
Hint: it's issue number two.

It's essentially the Finder that isn't constructed with other file systems than HFS+ in mind, enforcing limitations that make no sense to other file systems than HFS+.

Anonymous said...

Mac OS X 10.5.3 released! NTFS-3G 1.2506 works with them (tested on Intel Mac)

Anonymous said...

any update on how the fix for the 30 second shutdown issue is coming along?

Erik said...

Anonymous, May 29, 2008 6:22 PM:

A workaround is included in the latest version of the package, released today.

rocketmouse said...

Yes! No more waiting for ntfs-3g at shutdown. Cool. My MacBook (10.5.3--intel) shut down so fast I didn't even have a chance to read the (verbose) messages...
[Btw, BlueHarvest does indeed solve the resource fork problems.]