Problem is that memory cards can and do fail – even the expensive ones. And of course the world is littered with fakes. Being a bit of an old skinflint, almost all my memory cards have come from Amazon or similar. But I always add one extra precautionary step to the process between purchase and deployment. Test it first!
There are several test applications around. My favourite is called simply “F3” Fight Flash Fraud or Fight Fake Flash). Written by Michel Machado, F3 tests the full capacity of a flash card, byte-by-byte – regardless of whether it’s a flash drive, flash disk, USB stick or even an SSD. It comes with a number of simple utilities to test flash cards, the most important of which are f3write and f3read.
Using F3 to test a flash card requires the use of two simple terminal commands, thus:-
This will write a number of test files to the card until it is full. During which time the screen will display how quickly it is doing so and any problems that may arise. Then assuming no problems appear you perform the second part f the test, which is to read back the test files and ensure they are not corrupt.
Again this will show any issues that occur during the read process, c/w a brief report at the end. To illustrate how this works, I just ran the process on an old SD card, a few minutes ago, and took a screen capture at the end, to illustrate how it works…
As you can see, despite being 15 years old, this card performs as expected. Granted it is relatively tiny compared to more modern cards, but I wanted to demonstrate something that would run quickly. Obviously the larger the card, the longer it takes to test it.
If you run Debian or one of its derivatives (Ubuntu, Mint, Kubuntu. Neon et al) then f3 is part of your Linux distribution and can be installed imply by using the following command in a terminal window…
sudo apt install f3
For other operating systems, follow the instructions here…
F3 is a great little application. It means that if I buy a new card and it fails any part of the test, I can take a screen capture and chuck the bloody thing back at the seller, with proof, before it does any real arm.