Which version of OSXFUSE are you using? 2.3.4?
Am 08.11.2011 um 13:26 schrieb DualShock:
> Hi,
>
> I tested OSXFUSE on my 2008 Mac Pro running Snow Leopard 10.6.8 in preparation for upgrading to Lion. I forced the 64 bit kernel on also. I then installed NTFS-3g 2010.10.2, the latest Mac build offered by Erik Larsson on this page:
>
> http://macntfs-3g.blogspot.com/2010/10/ntfs-3g-for-mac-os-x-2010102.html
>
> However, after testing a few file copies to an internal NTFS drive, I saw disk corruption errors when I ran chkdsk from Windows, and some of the files I had copied had disappeared.
Did you install the MacFUSE compatibility layer when installing OSXFUSE? If you didn't, MacFUSE might still be installed and used. There are a few MacFUSE builds (2.1.7 mostly) that "seemingly" work on 64 bit kernels but will cause data corruption issues eventually.
> Of note, I never saw disk corruption when using MacFUSE and this same NTFS-3g build, under the 32 bit kernel in Snow Leopard.
I wonder if those corruption errors are linked to the 64 bit kernel code or OSXFUSE/NTFS-3G in general. To track this issue down you could boot Snow Leopard in 32 bit kernel mode and "try" to get some data corruption errors using OSXFUSE and NTFS-3g.
But just to make this clear: OSXFUSE does not write to the physical drive. NTFS-3G does. OSXFUSE just passes file system operations along.
Erik, what is your opinion on this? Have you heard of similar issues?
> Has anyone tested this combination? Is this an OSXFUSE issue, or is this NTFS-3g build just too old and incompatible with OSXFUSE?
I'm using NTFS-3G 2010.10.2 on Lion with OSXFUSE 2.3.4 myself. So far I haven't encountered any data corruption problems. But I only use NTFS-3G occasionally. NTFS-3G 2010.10.2 should be well-suited for Snow Leopard as far as I know. On Lion there is a 15 seconds timeout error that can be ignored but other than that it should be fine.
Regards,
Benjamin
As an aside you need to be careful that a disk is fully ejected before
unplugging. I've seen people pull out a disk after clicking "eject"
but before it had been removed from the UI causing corruption as it
was still sync-ing data. This was actually a FAT formatted USB stick
so it was unrelated to any third party file system but a good
cautionary tale that we can often be in a hurry but we need to be
careful with these things.
Cheers,
Sam Moffatt
http://pasamio.id.au
Benjamin Fleischer wrote 2011-11-25 18.52:
>> Of note, I never saw disk corruption when using MacFUSE and this same NTFS-3g build, under the 32 bit kernel in Snow Leopard.
> I wonder if those corruption errors are linked to the 64 bit kernel code or OSXFUSE/NTFS-3G in general. To track this issue down you could boot Snow Leopard in 32 bit kernel mode and "try" to get some data corruption errors using OSXFUSE and NTFS-3g.
>
> But just to make this clear: OSXFUSE does not write to the physical drive. NTFS-3G does. OSXFUSE just passes file system operations along.
>
> Erik, what is your opinion on this? Have you heard of similar issues?
No, I haven't. In general, data corruption errors can be on the file
data level or one the file system level. If on file data level (i.e. the
file system itself is fine, evidenced by running chkdsk in Windows),
then OSXFUSE could be to blame (not necessarily, but it's at least
possible).
In this case it's not on the file data level but on the file system
level and in that case, NTFS-3G itself is most likely to blame rather
than OSXFUSE. The only way OSXFUSE could influence NTFS-3G's operation
with regard to maintaining file system integrity is if its libfuse
corrupted the NTFS-3G process memory space, but in that case a crash
would be much more likely than random corruptions written out to disk.
Regards,
- Erik
> Hi,
>
> Benjamin Fleischer wrote 2011-11-25 18.52:
>>> Of note, I never saw disk corruption when using MacFUSE and this same NTFS-3g build, under the 32 bit kernel in Snow Leopard.
>> I wonder if those corruption errors are linked to the 64 bit kernel code or OSXFUSE/NTFS-3G in general. To track this issue down you could boot Snow Leopard in 32 bit kernel mode and "try" to get some data corruption errors using OSXFUSE and NTFS-3g.
>>
>> But just to make this clear: OSXFUSE does not write to the physical drive. NTFS-3G does. OSXFUSE just passes file system operations along.
>>
>> Erik, what is your opinion on this? Have you heard of similar issues?
>
> No, I haven't. In general, data corruption errors can be on the file data level or one the file system level. If on file data level (i.e. the file system itself is fine, evidenced by running chkdsk in Windows), then OSXFUSE could be to blame (not necessarily, but it's at least possible).
If the corruption is on the data level and caused by OSXFUSE we would most likely see similar issues with other file systems, too.
> In this case it's not on the file data level but on the file system level and in that case, NTFS-3G itself is most likely to blame rather than OSXFUSE. The only way OSXFUSE could influence NTFS-3G's operation with regard to maintaining file system integrity is if its libfuse corrupted the NTFS-3G process memory space, but in that case a crash would be much more likely than random corruptions written out to disk.
Thank you, Erik, for clearing this up.
Regards,
Benjamin
What makes you think it is a osxfuse issue? I'd try to rule out first NTFS-3g. Did you ask in their mailing list as well?
What makes you think it is a osxfuse issue? I'd try to rule out first NTFS-3g. Did you ask in their mailing list as well?
That makes sense, sorry if I sounded harsh, it's just that when there are data corruption it's usually the fs implementation. And it's also good to check first with the NTFS-3g authors. I wonder if the Tuxera's POSIX test suite passes fine with the osxfuse and NTFS-3g version you are using. Or if it makes sense to try it out in this case.
I have finally gotten around to re-testing this corruption issue I was seeing previously, as mentioned above. I am still able to reproduce the corruption quite reliably, even after switching to the 32 bit kernel.
To recap, I have a 2008 Mac Pro running Snow Leopard 10.6.8. I am planning to install Lion soon, so I wanted to test OSXFUSE + NTFS-3g in 64 bit mode. This Mac Pro has 3 internal SATA drives, an OS X boot drive (HFS+), a Windows 7 boot drive for Boot Camp (NTFS), and a data drive (also NTFS). The tests I performed were copying files from the OS X boot drive to the data drive, while booted into OS X. (I did NOT perform these tests with an external USB drive, if that makes any difference.)
The data drive has about 50 existing folders and files in the root directory, with various files and subfolders in each. (FWIW, the drive is 1 TB, with about 15 GB free space.) For the test, from within the Finder I created a new folder called 'ABC' in the root directory, then copied 5 files (plus their associated "._" resource fork files, which get copied automatically) from the OS X boot drive to the data drive, into a DIFFERENT empty folder off the root, NOT the 'ABC' folder first created. The files varied in size from 150 MB - 1 GB. Afterwards, I rebooted into Windows 7 and ran chkdsk /f on the drive.
I turned on debug logging in NTFS-3g, but didn't see anything noteworthy, just some messages related to mounting the 2 NTFS drives in my box. I did a few ad hoc tests with just copying files without creating a folder first, and that worked fine sometimes, but not always. I've attached a file containing chkdsk output after running test 3, if that helps out any. (File names in the output edited.)
Perhaps more a question for the more experienced NTFS-3G folk on list.
Cheers,
Sam Moffatt
http://pasamio.id.au