12

I am unable to mount any fat32 or fat16 formatted usb disks under Ubuntu 13.10. The thing here to note is that it is happening only with fat formatted Disks. ntfs, ext formatted external usb disks work well (I tried formatting the same with ext4 and it worked)

While mounting via nautilus:

Error while mounting via File Manager

Error while mounting from terminal:

root@shubham-pc:~# mount -t vfat /dev/sdc1 /media/shubham/n
mount: wrong fs type, bad option, bad superblock on /dev/sdc1,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

As suggested by the error: Output from dmesg | tail

root@shubham-pc:~# dmesg | tail
[ 3545.482598] scsi8 : usb-storage 1-1:1.0
[ 3546.481530] scsi 8:0:0:0: Direct-Access     SanDisk  Cruzer           1.26 PQ: 0 ANSI: 5
[ 3546.482373] sd 8:0:0:0: Attached scsi generic sg3 type 0
[ 3546.483758] sd 8:0:0:0: [sdc] 15633408 512-byte logical blocks: (8.00 GB/7.45 GiB)
[ 3546.485254] sd 8:0:0:0: [sdc] Write Protect is off
[ 3546.485262] sd 8:0:0:0: [sdc] Mode Sense: 43 00 00 00
[ 3546.488314] sd 8:0:0:0: [sdc] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
[ 3546.499820]  sdc: sdc1
[ 3546.503388] sd 8:0:0:0: [sdc] Attached SCSI removable disk
[ 3547.273396] FAT-fs (sdc1): IO charset iso8859-1 not found

Output from fsck.vfat:

root@shubham-pc:~# fsck.vfat /dev/sdc1
dosfsck 3.0.16, 01 Mar 2013, FAT32, LFN
/dev/sdc1: 1 files, 1/1949978 clusters

All normal

Tried re-creating the whole partition table and then formatting as fat32 but to no avail so the possibility of corrupted drive is ruled out. Tried the same with around 4 Disks or so and all have the same things

Braiam
  • 66,947
  • 30
  • 177
  • 264
cshubhamrao
  • 3,955
  • 2
  • 19
  • 30

2 Answers2

7

Apparently, your kernel somehow has problems (maybe a bug). Since there is an updated version available, install it (version 3.11.0-13-generic)

sudo apt-get install linux-generic

now reboot in your new kernel.

cshubhamrao
  • 3,955
  • 2
  • 19
  • 30
Braiam
  • 66,947
  • 30
  • 177
  • 264
  • 1
    i have linux 3.16 and have same problem. – momo2047 Feb 13 '15 at 23:54
  • 2
    I have Linux kernel 4.4.0-53 and I have the same problem. apt-get reports "linux-generic is already the newest version". – larskholte Dec 10 '16 at 00:15
  • @larskholte either you have a mis-configured system or you've hit a bug in the kernel/module. Either way, my answer given the information available is correct, your case might be different unless you are using 3.11 kernel. – Braiam Dec 10 '16 at 00:19
  • removed the latest kernel image and worked like a charm. but don't have any idea what to do when the update comes back again – benjamin button Feb 23 '18 at 11:49
  • @benjaminbutton report the bug with all the debugging information you can provide. Otherwise, how you expect it to be fixed? – Braiam Feb 23 '18 at 12:53
  • @Braiam I believe I didn't mention about "fixing" it. I told, "I don't have any idea how to prevent to upgrade to this kernel version". And also how do you know that I haven't submitted a bug report? Why are you people so mad and inconsiderate nowadays? ... – benjamin button Feb 24 '18 at 14:12
  • @benjaminbutton if you are worried about when the "update comes back again" it very likely means that you don't actually expect it to be fixed in the next version, and the most likely reason why you would have those expectations is because you haven't initiated the process of fixing it, which is done by bug reporting; otherwise it's very likely your wording would be more positive. – Braiam Feb 24 '18 at 15:02
  • Do a `fsck -f `, if you get a lot of inode repair actions, you know that your disk is corrupted and your inodes are broken.... You need to do a reinstall ;( – Melroy van den Berg Mar 26 '23 at 16:30
4

I had the same problem a few days ago with 4.4.0-57. modprobe nls_iso8859-1 threw an error, and without that module, that "IO charset not found" message appears.

Turns out the root filesystem was damaged. After a thorough fsck and reinstalling of the kernel (forced with apt-get install --reinstall), that module loads again, and I can mount my USB sticks.

@larskholte Even if the update to 4.4.0-57 fixed your problem by replacing the bad module, be sure to fsck your filesystems! That module not loading is only a symptom of a much bigger problem.

mow
  • 51
  • 2
  • I think you are correct. I think the root cause might indeed be a broken filesystem. In my case it doesn't load modules anymore either, I don't even get networking to work. Maybe my nvme disk died!? – Melroy van den Berg Mar 23 '23 at 22:31
  • Can I maybe ask how did you confirm your filesystem was damaged? Since fsck doesn't complain here. – Melroy van den Berg Mar 23 '23 at 22:32
  • (trying to load an older kernel didn't work either btw, so it make sense that maybe my whole fs is corrupt) – Melroy van den Berg Mar 23 '23 at 22:39
  • 1
    @MelroyvandenBerg I noticed errors in dmesg, then fsck -f compained a lot, but at least left a usable filesystem. What fsck doesn't fix is corrupt file contents, thus the --reinstall. – mow Mar 24 '23 at 23:40
  • But if you keep having problems after a kernel downgrade, the kernel modules obviously can't be the problem. Maybe try to reinstall modprobe? What kind of error do you get anyway? And what does smartctl / nvme-cli have to say about your nvme stick? Running memtest86(+) also is a good idea when facing weird problems. – mow Mar 24 '23 at 23:49
  • Yea so memtest is now running fine. Smart is saying all disks are fine. Fsck without `-f` went fine, with the `-f` option it gives indeed strange inode issues. https://i.ibb.co/f2GS1wR/strange.png. Still unsure why the data got corrupted after a simple restart. Since the disk health (smart) is all fine, I will go for a reinstall. – Melroy van den Berg Mar 26 '23 at 16:24