ntfsfix from ntfs-3g works well

ntfs-3g won’t automatically try to “fix up” your NTFS partition when it sees what’s probably the most common error after unplugging an external disk too eagerly: the MFT and its mirror being out of sync. In that case, a Windows system would just heal the problem when you plug in the disk. On Linux, you get a mount error. Some sources on the Internet recommend to always use Microsoft tooling to repair this situation, i.e. they recommend to use an actual Windows system for doing the repair. I was in yolo mode and tried ntfsfix (which is part of ntfs-3g):

$ sudo ntfsfix /dev/sdc1
Mounting volume... $MFTMirr does not match $MFT (record 3).
Attempting to correct errors... 
Processing $MFT and $MFTMirr...
Reading $MFT... OK
Reading $MFTMirr... OK
Comparing $MFTMirr to $MFT... FAILED
Correcting differences in $MFTMirr record 3...OK
Processing of $MFT and $MFTMirr completed successfully.
Setting required flags on partition... OK
Going to empty the journal ($LogFile)... OK
Checking the alternate boot sector... OK
NTFS volume version is 3.1.
NTFS partition /dev/sdc1 was processed successfully.

After that, the mount operation did not throw errors anymore.

I’ve worked with the volume since then; and everything seems to be smooth. This is a 4 TB external disk which I think is rather brittle. Btw, this process took quite a while.

Given the history of ntfsfix.c I think this really was a bit of a risky endeavor.

Leave a Reply

Your email address will not be published. Required fields are marked *

Human? Please fill this out: * Time limit is exhausted. Please reload CAPTCHA.