Linux 29 Lipiec 2026

Mounting NTFS in Dolphin - volume is dirty error and ntfsfix repair

Also in:

I click an NTFS drive in Dolphin and, instead of mounting, I get an error about a „wrong file system" or „bad superblock". Running sudo mount -t ntfs-3g by hand works, but that's not the point — clicking in the file manager used to just work. This article explains where this comes from on Ubuntu/Kubuntu 24.04, how to fix the drive with a single command, and how to prevent it from happening again.


Symptom

Clicking an NTFS drive in Dolphin ends with a message like:

An error occurred while accessing 'My Book', the system responded: The requested operation has failed: Error mounting /dev/sda1 at /media/sarniak/My Book: wrong fs type, bad option, bad superblock on /dev/sda1, missing codepage or helper program, or other error.

The message is misleading — it suggests missing software, while the actual problem is something else entirely.


The real cause

Checking the kernel logs reveals the true reason:

journalctl -b | grep -iE "ntfs|sda1"
# or: sudo dmesg | grep -i ntfs
ntfs3(sda1): It is recommened to use chkdsk.
ntfs3(sda1): volume is dirty and "force" flag is not set!

The NTFS partition has the „dirty" flag set — meaning the file system was not cleanly unmounted. Common causes:

  • the drive was disconnected without „safely remove" / „unmount",
  • Windows was shut down with Fast Startup enabled, or put into hibernation — this leaves NTFS in a dirty state.

Why „it used to work"

Ubuntu/Kubuntu 24.04 mounts NTFS through udisks2 using, by default, the ntfs3 kernel driver. This driver refuses to mount a dirty partition until the force flag is set. Previously the ntfs-3g (FUSE) driver was used, which was more forgiving and mounted despite the dirty flag. That's why:

  • running sudo mount -t ntfs-3g /dev/sda1 /mnt by hand still works (it bypasses ntfs3),
  • but clicking in Dolphin (which goes through udisks2 → ntfs3) fails.

This is not a drive failure or a missing package — udisks2, ntfs-3g and polkit can all be fully functional.


The fix (one-time)

You just need to clear the „dirty" flag once. This is a one-time sudo, not mounting via sudo every time — after this, clicking in Dolphin works normally again.

First make sure the drive is not mounted (if ntfs3 rejected it, it isn't anyway). Then:

sudo ntfsfix -d /dev/sda1

The -d flag (--clear-dirty) clears the dirty flag if the volume can be safely mounted.

Example output

sarniak@nyarlathotep:~$ sudo ntfsfix -d /dev/sda1
[sudo] hasło użytkownika sarniak:
Mounting volume... OK
Processing of $MFT and $MFTMirr completed successfully.
Checking the alternate boot sector... OK
NTFS volume version is 3.1.
NTFS partition /dev/sda1 was processed successfully.

After that, just click the drive in Dolphin — it will mount without any issue.

How to find the partition name (/dev/sda1, etc.): lsblk -f. The FSTYPE column will show ntfs, and LABEL/UUID will help you identify the right drive.


Alternative: forcing the mount via ntfs3

Instead of clearing the flag, you can mount with the force option (mounts despite dirty, read-write, but without a consistency check — less safe):

sudo mount -t ntfs3 -o force /dev/sda1 /mnt/drive

In practice ntfsfix -d is cleaner, because it repairs the state once and restores normal click-to-mount in Dolphin.


How to prevent recurrences

  • In Dolphin, always use „Unmount" / „Safely remove" before disconnecting the drive.
  • If you also use the same drive under Windows: disable Fast Startup
    (Control Panel → Power Options → „Choose what the power buttons do" → uncheck „Turn on fast startup"). Fast Startup leaves NTFS in a dirty/hibernation state on every „shutdown".
  • Don't yank out a USB drive while it's writing or right after copying files — wait for the unmount to finish.

Quick cheat sheet

Step Command
Identify the partition lsblk -f
Check the cause in the logs journalctl -b \| grep -i ntfs
Clear the dirty flag sudo ntfsfix -d /dev/sdX#
Mount click in Dolphin (or udisksctl mount -b /dev/sdX#)
Deeper repair (Windows) chkdsk X: /f