I've got an SD card I've accidentally removed without unmounting on an Android phone. After this, the card shows up as having files with garbage names and dates. Seems, that FAT got broken but I cannot run fsck on this drive:
$ sudo dosfsck -n /dev/sdb dosfsck 3.0.7, 24 Dec 2009, FAT32, LFN Logical sector size (64543 bytes) is not a multiple of the physical sector size.
How I can work around this error and recover the data?