I am trying to mount a relatively new external HDD but, when running

sudo mount  /dev/sdc /mnt/harddrive

I get the following error message:

mount: /mnt/harddrive: wrong fs type, bad option, bad superblock on /dev/sdc, missing codepage or helper program, or other error.

and running

sudo mount  /dev/sdc1 /mnt/harddrive


Failed to open ntfs attribute: No such file or directory
Failed to load $MFT: No such file or directory
Failed to mount '/dev/sdc1': No such file or directory

I cannot seem to find what the problem is. Here is my output of fdisk -l

Disk /dev/sdc: 1.8 TiB, 2000398933504 bytes, 3907029167 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 33553920 bytes
Disklabel type: dos
Disk identifier: 0x584a9df4

Device     Boot Start        End    Sectors  Size Id Type
/dev/sdc1  *       64 3907024128 3907024065  1.8T  7 HPFS/NTFS/exFAT

Any ideas?

  • Do you expect there to be something on the disk (e.g., you're moving it from another computer) or is it reasonable that there might be no files on it (e.g., it's brand new from the store). If it's brand new, you need to mkfs before you can mount it for the first time. Commented Nov 25, 2018 at 20:13
  • 1
    What is the output of file -s /dev/sdc1 Commented Nov 25, 2018 at 22:07
  • There is data on the disk. This is an error that suddenly occured. Will add the output of ´file´ tonight.
    – erogath
    Commented Nov 26, 2018 at 16:13

2 Answers 2

sudo mount  /dev/sdc /mnt/harddrive
mount: /mnt/harddrive: wrong fs type, bad option, bad superblock on /dev/sdc, missing codepage or helper program, or other error.

This error isn't surprising: you can only mount a filesystem (which usually resides on a partition like /dev/sdx1), but here you're trying to mount the entire disk (/dev/sdx).
Hence the error "wrong fs type […]": there is no filesystem at the location you have specified.

sudo mount  /dev/sdc1 /mnt/harddrive

Here, you're specifying a partition, which may (or may not) contain a filesystem.
Based on the information in the partition table (that you have looked at using fdisk -l), the kernel assumes there should be an NTFS on this partition and loads the relevant kernel module to mount it. That module then fails to mount the NTFS and reports a few errors along the way.

This can mean one of several things:

  • There is an NTFS on the partition, but it is damaged.
    In that case, try recovering it from a Windows machine like Micheal suggested.
  • There is a different filesystem on there which is not natively supported by Linux (e.g. exFAT).
    In that case, you may be able to install third-party software to mount the filesystem. You should, however, check which filesystem is actually on the drive before randomly installing and trying things.
  • There is no filesystem at all; the entry in the partition table is just misleading.
    In that case, there is nothing to lose: just format the partition with a filesystem of your choice and change the filesystem type in the partition table accordingly.
  • That additional 1 is what helped me! Thanks!
    – DalyaG
    Commented Jul 16, 2020 at 6:10

I would do a lowlevel backup first:

sudo dd if=/dev/sdc1 of=/path/to/lots/of/space/sdc1.img

Then I would put that drive into a windows system and use the windows repair tools. As linux has no support for repairing NTFS.

ntfsfix will only mark the drive as needing attention in windows.

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