Eu não sei se isso vai realmente resolver o seu problema, mas este artigo tem algumas dicas legais, especialmente as opções -a -r que você precisa aplicar.
Não é possível resolver o aviso de corrupção de dados com fcs
This is stupid. I find myself answering my own question again. It says,
Leaving filesystem unchanged.
suggesting that nothing is changed. This actually mean that typing 1 followed by pressing enter inside the fsck prompt did not work. Anyway, the following does work:
$ fsck.vfat -v -a -w /dev/sda1
The above command automatically write changes to disk. It would be great if anyone can tell me whether this is a bug in fsck or it is due to something else.