External Drive Mounting Error

Hello,

Recently upgraded to 24.04.2 LTS.

I have an external usb drive that I am unable to connect to, getting this error.

Error mounting /dev/sdd2 at /media/user1/3TB: wrong fs type, bad option, bad superblock on /dev/sdd2

Checked other posting on this topic....no joy.

sdd2 is what I'm trying to get to.

sdd      8:48   0   2.7T  0 disk 
├─sdd1   8:49   0   200M  0 part 
└─sdd2   8:50   0   2.7T  0 part 
user1@FOB-Mate-20:~$ blkid
/dev/sda2: UUID="14da8ea1-37f8-48c2-95b8-1d1106380589" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="1f814288-b77d-4d1b-8e40-114bbde23d82"
/dev/sdd2: LABEL="3TB" BLOCK_SIZE="512" UUID="443CAC253CAC13C8" TYPE="ntfs" PARTLABEL="3TB" PARTUUID="41e0e337-743a-42a4-a5b9-51fc50d5e05d"

Ran:

user1@FOB-Mate-20:/etc$ sudo ntfsfix /dev/sdd2
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/sdd2 was processed successfully.

Rebooted, still unable to mount. Is there correction other than what I'm doing?

Thanks for the help.

This is a condition that isn't that infrequent, but it's scary nevertheless. Here's a site that says what steps you can take to address it:

1 Like

I would be curious to know what GParted is reporting for that device.

So I connected the drive to a windows machine and the files were accessible. Everything was there. When I re-connected it to my Linux box, now, no error showed up but still can't connect to it.

Running lsblk

user1@FOB-Mate-20:~$ lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
loop0    7:0    0     4K  1 loop /snap/bare/5
loop1    7:1    0  55.4M  1 loop /snap/core18/2846
loop2    7:2    0  55.4M  1 loop /snap/core18/2855
loop3    7:3    0  63.8M  1 loop /snap/core20/2501
loop4    7:4    0  63.8M  1 loop /snap/core20/2571
loop5    7:5    0  73.9M  1 loop /snap/core22/1908
loop6    7:6    0  73.9M  1 loop /snap/core22/1963
loop7    7:7    0   242M  1 loop /snap/firefox/6042
loop8    7:8    0   242M  1 loop /snap/firefox/6073
loop9    7:9    0 349.7M  1 loop /snap/gnome-3-38-2004/140
loop10   7:10   0 349.7M  1 loop /snap/gnome-3-38-2004/143
loop11   7:11   0 505.1M  1 loop /snap/gnome-42-2204/176
loop12   7:12   0   516M  1 loop /snap/gnome-42-2204/202
loop13   7:13   0  91.7M  1 loop /snap/gtk-common-themes/1535
loop14   7:14   0  44.4M  1 loop /snap/snapd/23771
loop15   7:15   0  50.9M  1 loop /snap/snapd/24505
loop16   7:16   0    16K  1 loop /snap/software-boutique/54
loop17   7:17   0  13.5M  1 loop /snap/ubuntu-mate-welcome/720
loop18   7:18   0    16K  1 loop /snap/software-boutique/57
loop19   7:19   0  13.5M  1 loop /snap/ubuntu-mate-welcome/726
sda      8:0    0 465.8G  0 disk 
├─sda1   8:1    0   512M  0 part /boot/efi
└─sda2   8:2    0 465.3G  0 part /var/snap/firefox/common/host-hunspell
                                 /
sdb      8:16   1     0B  0 disk 
sdc      8:32   1     0B  0 disk 
sdd      8:48   0   2.7T  0 disk 
├─sdd1   8:49   0   200M  0 part 
└─sdd2   8:50   0   2.7T  0 part 
user1@FOB-Mate-20:~$ 

As far as GParted goes, GParted does not even recognize sdd1 or sdd2.

Ran:

user1@FOB-Mate-20:~$ sudo fsck /dev/sdd
[sudo] password for user1: 
fsck from util-linux 2.39.3
e2fsck 1.47.0 (5-Feb-2023)
ext2fs_open2: Bad magic number in super-block
fsck.ext2: Superblock invalid, trying backup blocks...
fsck.ext2: Bad magic number in super-block while trying to open /dev/sdd

The superblock could not be read or does not describe a valid ext2/ext3/ext4
filesystem.  If the device is valid and it really contains an ext2/ext3/ext4
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
    e2fsck -b 8193 <device>
 or
    e2fsck -b 32768 <device>

Found a gpt partition table in /dev/sdd

AND

user1@FOB-Mate-20:~$ sudo ntfsfix /dev/sdd2
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/sdd2 was processed successfully.

From Hatch.JS link above, it suggested df -T, but it did not find sdd1 or sdd2

I take that back, GParted shows /dev/sdd1 as EFI System Partition , fat32 and /dev/sdd2, 3TB (which is what I was connecting to), ntfs 3TB.

You should be able to fix that with some form of drive repair, i think 'disks' is able to do it, but i usually use Windows to fix drive errors.

For external drive, I recommend to use ExFat partition instead of NTFS. Because better support for working on both Linux/Windows. Also, if windows shutdown with fast startup, then it lock NTFS partition which can't be read on Linux.

2 Likes

ONLY IF YOU HAVE A FULL BACKUP OF THAT DISK ...

I would suggest using one of the command line partition editors (parted, cfdisk, fixparts) that you are most comfortable with to

  • list the partition details
  • confirm that you have all that information saved for reference, then
  • re-save that disk's partition tables.

That should only impact the UUID, if even that.

In my estimation, it is possible that there is some kind of age-related issue (specifically ... too many disk reads, leading to block de-magnetization). Re-writing that partition table's impression on disk with no change should leave the disk data untouched, but the partition table accessible with greater ease.

It's just a thought, even if it is a bit extreme as a solution.

The only other thought I have is that there may be a need to specify a "quirk" as part of your GRUB boot configuration, that specifically addresses some I/O issues related to that particular model of drive. That is what I had to do for in order to properly used my external 4TB MyBook USB drive. References on that are detailed here.

1 Like

sudo fsck /dev/sdd

I believe this command was incorrect. sdd is the entire disk (itself isn't a valid partition). sdd1, sdd2 are the partitions, which might explain the superblock error.


How is the disk being mounted (e.g. click in the Caja sidebar)? Do you get the same error if you manually mount? Maybe also try the ro option for read-only:

sudo mount -o ro /dev/sdd2 /mnt

The error could happen if you don't have the NTFS driver installed, or it's been blacklisted. I think one of the packages providing NTFS support is ntfs-3g.

Generally, for NTFS filesystem errors, I think running chkdsk /F X: on Windows (its native environment) is better to fix them - if the issue is due to some inconsistency.

3 Likes

I formatted a 250 gig Simple Drive to ext. 4. It would not be recognized on Windows and gave me permission problems on Linux. It was locked on any other computer and with any other user on that same computer. When I copied as the original user to a USB drive, every thing I copied was also locked.
I had that happen on USB drives too. I now only use fat32/exfat.

1 Like

I agree with Luke about the chkdsk command from a Windows box.

Out of curiosity, what does the following report:

inxi -Dxxx

1 Like

After connecting it to a Windows machine and backing all the files up, I reconnected to my Linux box and ... for grins, in Disks again, ran Check Filesystem and Repair Filesystem ....and it connected. Not sure if it was the act of connecting to the Windows machine and backing everything up or running the Repair Filesystem in Disks is what did the trick. Regardless, it's working.

Thank you all for your input, very helpful.

Philippe mentioned reformatting the drive from NTFS to exFat, which makes sense. This link has a good comparison chart of FAT, exFat and NTFS.

From the HatchJS link above, it has this:

For example, to change the file system type of a device to ext4, you would use the following command:

$ mkfs.ext4 /dev/sda1

My question is can exFat be substituted for ext4?....changing the path of course.

1 Like

Yes, the command is mkfs.exfat
See also man mkfs.exfat

1 Like