{{tag>sysadmin linux usb healthcheck}}
====== Contrôler l' état de santé d'une clé USB ======
===== L'utilitaire f3 =====
**f3** permet de faire des tests de performance de la mémoire flash et de vérifier que la capacité annoncée par le périphérique correspond à la capacité mémoire réellement disponible:
sudo apt install f3
==== Test de performance ====
On peut facilement lancé un test de performance en écriture après montage du périphérique
# premiere partie du test en écriture
f3write /mount/point/
# seconde partie du test, lecture
f3read /mount/point/
Le test de performance indique également si des erreurs se sont produites via les la colonne "corrupted" et la valeur de **DATA LOST** sur le rapport en fin d’exécution. Si des erreurs sont dectectées, un test exhaustif peut être effectué avec [[sysadmin:linux:usb:verifier_etat_cle_usb#identifier_les_secteurs_defectueux_avec_bablocks | badblocks]]
==== Test de capacité ====
Certaines mémoires Flash USB n'ont pas réellement les capacités qu'elles annoncent. Pour vérifier que la capacité déclarée correspond à la capacité disponible:
Ici la commande agit sur le périphérique non monté. Attention l'opération est destructive, elle ne conservera pas les données présentes sur le média:
sudo ./f3probe --destructive --time-ops /dev/sdX
==== Corriger la capacité annoncée ====
Si le bilan du test précédent remonte une incohérence, on peut modifier la taille de la mémoire déclarée par le périphérique via la commande:
sudo ./f3fix --last-sec=16477878 /dev/sdX
===== Identifier les secteurs défectueux avec bablocks =====
Si la mémoire présente des secteurs défectueux, on peut utiliser l' utilitaire **badblocks** pour les identifier de façon exhaustive:
sudo badblocks -w -s -o error.log /dev/sdX
Les options utilisées ici sont:
* **-w** mode de test en écriture. Écrit des motifs et vérifie par relecture.
* **-s** affiche la progression du test
* **-o** enregistre les résultats du test dans le fichier passé en argument;
Les secteurs défectueux doivent pouvoir être marqués pour ne pas être utilisés.
===== Références =====
* https://www.cyberciti.biz/faq/linux-check-the-physical-health-of-a-usb-stick-flash-drive/