Why is Android 5 corrupting my SD card (moving files to LOST.DIR or losing them)? I've been using VFAT formatted SD cards for years to transfer files between devices (tablets, cameras, GPS, computers) under different OS (Linux, Windows, Symbian, Android) without, as I recall, any significant problems. In some cases (the GPS), that's the only way to copy files.

Recently (May 2016) I got a new phone, and tried to copy a file from my Android (4.2.2) tablet to the Android (5.1.1) phone via SD card, putting the card from the tablet in the phone. The phone trashed my SD card. Hundreds of  files were renamed and moved to LOST.DIR, and some I think deleted (I recovered more with photorec on Linux, and most have metadata such as EXIF that I can reset the date and name from, but it was annoying).

This seems to be repeatable; I tried with a new card, originally on the phone, and tried creating files under Linux (Fedora 9). If I create a new file under Android 4.2,  then move the SD card to Android 5.1, it will rename the file into LOST.DIR. It seems that 5.1 is running an fsck pass when the card is inserted, "repairing" it. If I try "fsck.vfat -r" on Fedora, it doesn't like the file .android_obb, saying it's an illegal filename, but it doesn't trash the FS.

I thought about using an EXT4 formatted SD card, which Android and Linux will recognize, but Android won't it seems automount it. I can mount it manually on my jailbroken tablet, as root from adb, but that seems clunky and besides, I haven't jailbroken the phone.

There are hundreds of complaints online about LOST.DIR, so it's hard to find a good technical answer. Does anyone know more about this, such as why it happens or how to prevent it (apart from not doing that particular transfer) ? For instance, can one disable the fsck on insertion ?
You should probably mount the SD card with a USB reader in the PC, to see if the SD card or filesystem is damaged.

I had that issue a couple of times and it was that the SD card was actually corrupted or broken. So, a filesystem check might fix it or you will know that it needs to be replaced.

In Linux, you could check the filesystem with fsck.vfat. It works ok for a fat32 filesystem (not so for ntfs), so you could try that. Or use some other GUI utility like Gparted, Disks or whatever you like.

In Windows you should right click your SD drive (in my computer), select properties, the tools tab and check now. You can leave the auto fix errors checked if you don't mind losing files. (Disclaimer: I don't use windows, so the way to get to this might have changed in the last few versions).

If the card has corrupt sectors, the wisest thing to do is to format it (in vfat/fat32) and fill it with files (like mp3 or movies), then run another filesystem check. If it fails again, you should replace the SD.

ps1. Even if you don't have corrupt sectors, re-formatting the filesystem may fix the underlying issues. And if the problem persists, you should replace the SD.

ps2. Regarding ext4, it's not supported by default Android, you could use it with a partition if you have rooted the phone and Link2SD installed, but it's not recommended. ext4 has a journal system which would read &amp; write more often to the SD and diminish the cards life. ext2 is recommended instead (is the last ext filesystem without journal).

Update after re-reading:

Android 4 (kitkat), 5 (lollipop) and 6 (marshmallow) use all different methods to handle external storage (sd cards).

I didn't quite understand at first read that you were moving the SD card from one phone to the other.

As the access method to external storage changed between versions, this might be a permissions issue and you might be breaking some internal android settings.

You should try sharing the file with another peer to peer (email, telegram, syncthing, bluetooth or bittorrent sync) android utility or cloud based storage (dropbox, mega, wetransfer, etc.).