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

  • Do you use a self-compiled kernel or default Ubuntu one?
    – qbi
    Nov 7 '13 at 12:12
  • The default one Nov 7 '13 at 12:25

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.

  • 1
    i have linux 3.16 and have same problem.
    – e-info128
    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 0: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 0: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 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

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.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.