Wat je beschrijft, verwondert me. Als er corruptie is van het FAT bestandssysteem, dan gaat Ubuntu voor zover ik weet die partitie helemaal niet mounten. Volgens wat jij beschrijft, wordt de partitie wel automatisch gemount, maar als read-only. Staat die schijf in je /etc/fstab misschien? (hoort daar niet thuis).
Dat bestandssysteem moet in elk geval "gerepareerd" worden, tenzij onder Windows met chkdsk, maar voor fat kan het ook met Linux, want het fat bestandssysteem heeft geen geheimen. Hiervoor moet je de schijf eerst ontkoppelen, en dan testen en repareren met dosfsck. Stel dat je externe schijf /dev/sdb is, met je fat partitie /dev/sdb1, dan gaat het als volgt:
sudo umount /dev/sdb1
sudo dosfsck /dev/sdb1
Dit controleert alleen de schijf, maar gaat geen correcties doorvoeren. Met "man dosfsck"kan je er de verschillende opties op nakijken om eventueel de herstellingen door te voeren. "-a" gaat "automatisch" repareren, "-r" gaat voor iedere probleem vragen hoe je het opgelost wil zien.
Voor bestanden die niet meer in een directory terug te vinden zijn ("lost clusters" zullen bestanden aangemaakt worden in de hoofddirectory van je schijf. Dan moet je de vingers gekruist houden en die bestanden bekijken, en proberen te openen. In sommige gevallen zal je op die wijze bestanden volledig terug hebben, in andere gevallen recupereer je slechts gedeelten van een bestand, die dan ook onbruikbaar zijn.
In deze post
http://forum.ubuntu-nl.org/message/192838#p192838 vermeldt Gandyman allerlei recovery tools.