52

When I try to do a ntfsck to a NTFS partition I get this:

sudo ntfsck /dev/sdb1
Unsupported: replay_log()
Volume is dirty.
Unsupported: check_volume()
Checking 161792 MFT records.
Unsupported cases found.

How can I clean a "dirty" NTFS volume without having to actually use windows chkdsk tool in the NTFS volume.

I also did a ntfsfix and it said that everything was OK but it actually was not.

I also get the same "Dirty" error when trying to check the filesystem using the Disk Utility:

enter image description here

I am starting to think I need some powerful soap.

2
  • I don't know if this will help, but I came across this bootable utility disk that has DOS and a miniXP that looks interesting: hirem's boot CD Mar 12, 2012 at 0:07
  • Even though you specifically said "Without using Windows", you might have to resort to creating a Windows VM and running chkdsk if the below answer doesn't solve your problems. That's what I have to do anyway ;) Apr 6, 2016 at 18:10

2 Answers 2

74

Try using ntfsfix, which was part of the old ntfsprogs package and is now located in the ntfs-3g package (which you may already have installed).
This is a command line utility which attempts to fix common NTFS problems. It's been a while since I last used it, but it should do its job simply by typing:

sudo ntfsfix /dev/sdb1

It also offers a specific option to clear the "dirty" flag on the partition:

sudo ntfsfix -d /dev/sdb1

which might or might not be required in addition to the first command. Have a look at man ntfsfix for more information.

12
  • I am very sorry. I also did test with that command before doing the ntfsck. I will add it to the question sorry. Also after doing a fix it did not mention anything wrong it just said that everything was ok. Mar 11, 2012 at 22:25
  • 4
    Actually ntfsck is the one with the -d parameter but anyway it does not solve the problem. It keeps on telling me that it is a dirty partition. Sounds sexy but is not. Mar 23, 2012 at 0:05
  • 1
    This does not work. Jul 15, 2012 at 14:52
  • 2
    ntfsck is deprecated and no longer distributed. The -d option has been integrated into ntfsfix instead. Oct 29, 2012 at 0:50
  • 3
    Before you'll need to umount /dev/sdb1 or you'll get a Refusing to operate on read-write mounted device /dev/sdb1 error. Apr 8, 2017 at 20:57
1

I think it may actually be that you need to stop checking it. :)

I believe I once had similar reports, and I even booted into the original Windows install that made it to run chkdsk, which didn't help. But what I learned was that Linux couldn't check an NTFS partition, and it should be mounted with the fsckorder set to zero.

I'm not certain if this has changed since then, but hopefully you can crosscheck this to see if it might solve your problem.

Edit: Forgot to add, I've had no problems with this partition since that time.

2
  • 1
    I had the same "Not Clean" dialog on an external NTFS drive when connected to my Ubuntu machine. I ran chkdsk on that drive on a windows machine, and it found no problems with it. I guess that the dialog on Linux is unreliable.
    – Amir Uval
    Mar 12, 2014 at 13:33
  • 1
    The check flag does not always mean there are errors on the drive. it only means a check was scheduled for next boot. you can do that (scheduling) manually with ntfsfix or chkdsk. Linux only tells you if the flag is set. and that it does reliably.
    – JPT
    Oct 14, 2018 at 9:01

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .