Mounting a disk in Linux and dirty volume error#
I hadn’t used my external hard drive for some time, which was formatted as NTFS, and when I went to use it (mount it) after updating the operating system, an error about a dirty volume appeared. If you’ve encountered this too, here’s how to solve it.
Mounting a disk in Linux#
To mount our disk from the command line in Linux, we first need to find out
where it is located. We do this by using lsblk
.
The output will look similar to what’s shown below. External devices (hard
drive, USB, etc.), are appended to the /dev/sdX*
points, where X
is a
letter and *
is a number. In this case, our external hard drive is recognized
as /dev/sda1
. Note that these points always start with the /dev/
path.
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 931,5G 0 disk
└─sda1 8:1 0 931,5G 0 part
nvme0n1 259:0 0 953,9G 0 disk
├─nvme0n1p1 259:1 0 300M 0 part /boot/efi
└─nvme0n1p2 259:2 0 953,6G 0 part /
We need a directory to mount the unit, so we’ll create a new one (or use an existing one if you have it).
mkdir -p ~/media/eddisk
Now we’ll mount the disk.
sudo mount -t ntfs-3g /dev/sda1 ~/media/eddisk
If everything is okay, we now have access to the available disk in that directory.
Dirty Volume Error#
The story in my case is that not everything was okay - the automatic mounting and manual mounting via command line wouldn’t work. A curious thing is that the mounting with the file manager (in my case, dolphin, since I use KDE as my desktop environment) worked correctly. It seems that this error can occur when using the disk in Windows with fast boot enabled.
The error message we’ll see will be:
wrong fs type, bad option, bad superblock on /dev/sda1, missing codepage or helper program, or other error. dmesg(1) may have more information after failed mount system call.
Upon inspecting with the suggestion of the error message, I ran the command
sudo dmesg
.
[ 1662.331363] sda: sda1
[ 1662.331822] sd 2:0:0:0: [sda] Attached SCSI disk
[ 1665.785708] ntfs3(sda1): It is recommened to use chkdsk.
[ 1665.834695] ntfs3(sda1): volume is dirty and "force" flag is not set!
This tells us that we are presenting an error of a dirty volume, and we can solve it by executing:
sudo ntfsfix -d /dev/sda1