J'ai récemment lu beaucoup de choses sur les fausses cartes MicroSD et les clés USB qui prétendent avoir beaucoup d'espace (même si vous demandez à votre ordinateur), alors qu'elles en offrent physiquement beaucoup moins. J'ai récemment acheté une clé USB SanDisk (128 Go prétendus) et je veux tester sa taille. Je ne l'ai pas achetée sur ebay, mais je veux vraiment tester sa taille réelle avant de l'utiliser de manière productive.
Je pourrais simplement copier des choses dessus, les recopier et vérifier si les fichiers sont corrects. Je pourrais aussi l'automatiser avec des hachages et d'autres choses. Mais j'espère qu'il existe une solution plus précise. J'ai lu que pour Windows, H2testw fait l'affaire. Existe-t-il un moyen simple de tester cela sur Ubuntu/Linux ? Un outil spécialisé et performant peut-être ?
Mise à jour : Pour être clair, l'idée est de vérifier que la taille que le système linux reçoit du contrôleur est correcte ( aucune donnée n'est perdue ). Ce n'est pas comme si je voulais voir si j'obtiendrais 128 Go au lieu de 127,3 Go. Je veux tester si toutes les données que j'écris seront à nouveau lisibles. Malheureusement, je ne trouve que peu d'informations à ce sujet sur les sites technologiques anglais. Il existe cependant de bonnes sources allemandes. Je suis en fait à la recherche d'une application comme celles-ci, mais pour Ubuntu/Linux : https://www.raymond.cc/blog/test-and-detect-fake-or-counterfeit-usb-flash-drives-bought-from-ebay-with-h2testw/
Mise à jour2 : J'ai essayé de rassembler quelques sources en anglais. Je ne les ai pas toutes lues en détail, faute de temps.
- https://www.ebay.com/gds/All-About-Fake-Flash-Drives-2013-/10000000177553258/g.html
- https://en.wikipedia.org/wiki/USB_flash_drive#Counterfeit_products
- https://www.heise.de/newsticker/meldung/Verdaechtige-USB-Sticks-mit-2-Terabyte-bei-Amazon-Faelschungen-entlarven-Datenverluste-vermeiden-3915202.html
- http://www.pcgameshardware.de/USB-Stick-Hardware-255579/News/falsche-Speicherkapazitaet-bei-Amazon-1245682/
Mise à jour3 : Explications
En raison des étranges critiques ci-dessous, quelques explications.
Quel est le problème et pourquoi le dd seul ne le résout-il pas ?
Il s'agit d'une réaction à
"Déterminez clairement quel est le problème que vous essayez de résoudre et quelle est la définition de "faux disque"."
Il semble que certaines personnes ne comprennent pas le problème. J'essaie donc de l'expliquer aussi brièvement que possible dans les détails, même si je pense que cela va bien au-delà de ma question.
La capacité des périphériques USB indiquée par votre système d'exploitation ou vos outils Unix peut être erronée. C'est fatal, car votre système d'exploitation régule la quantité de données que vous pouvez lui envoyer. Si vous envoyez plus de données qu'il ne peut en contenir, vous subirez une perte de données. C'est un problème. Alors, pourquoi cela peut-il se produire ?
Il n'est pas nécessaire de bien connaître le protocole USB pour comprendre le problème. Les interfaces série ont la propriété commune que le dispositif client (le lecteur USB) devra indiquer sa propre capacité via cette interface série. Cela signifie que l'appareil client a besoin de son propre contrôleur qui connaît l'objectif de l'appareil et, dans ce cas, sa capacité. C'est également lui qui décide de ce qui est fait lorsqu'il reçoit l'ordre de stocker quelque chose. Si le contrôleur est programmé de cette manière, il peut simplement ignorer la commande ou écraser quelque chose avec les données.
Qu'est-ce que cela signifie ? Ce que vos outils Unix vous disent sur la capacité du disque : C'est ce que les outils ont demandé au disque, rien de plus. C'est pour cela que h2testw a été inventé : Il teste la taille réelle avec une méthode expliquée plus loin, et la compare à ce que dit le disque. Si ce n'est pas le cas, vous risquez de perdre des données, car toutes vos opérations courantes de stockage de données reposent sur les informations de votre système d'exploitation, qui ne fait que demander au contrôleur. Pourquoi simplement demander ? Le test prend du temps et écrase toutes les données sur le disque. Il est donc naturel qu'un système d'exploitation ait besoin de ces informations.
Pour vérifier la capacité réelle comme h2testw, vous pouvez en effet utiliser dd
pour écrire des données sur le disque, les relire et voir si elles sont identiques à celles que vous avez écrites. C'est tout à fait légitime. La nature du matériel et du disque rend les choses plus compliquées. Prenons l'exemple des caches d'écriture. Vous devez vous assurer que vous ne lisez pas à partir du cache. Ce n'est qu'un exemple des raisons pour lesquelles ce n'est pas aussi simple que cela en a l'air. Pensez également que le simple fait d'écrire des zéros signifie une faible entropie de l'information, qui peut être reconstruite lors de la lecture. Dans le détail, ce n'est pas si simple. Vous pouvez toujours le faire manuellement, bien sûr.
Mais pourquoi, quand on peut automatiser les choses ? Pourquoi ce travail ? f3, comme je le propose dans ma réponse ci-dessous, met en œuvre des tonnes d'idées de nombreux contributeurs (considérez qu'il a en quelque sorte étendu h2testw) et il met également en œuvre plusieurs méthodes avec des compromis différents. Le développeur a compris les astuces des différents faux lecteurs (aka counterfeit drives) qu'ils avaient. à portée de main . Donc, bien que je comprenne la théorie et le problème (apparemment parce que les problèmes sont bien expliqués dans les médias technologiques allemands, mais pas dans les médias anglophones), je ne prétends pas tout comprendre, et c'est pourquoi je l'ai mentionné plus haut. C'est juste la théorie que je comprends, et je suis plus un gars du logiciel. Mais en tant qu'étudiant en informatique, je comprends suffisamment bien pour voir le problème.
"Essayer de comprendre les utilitaires Unix de base".
En fait, j'ai déjà répondu à cette question, mais pour être clair : les outils Unix utilisent simplement le protocole USB (pour les périphériques USB uniquement, bien sûr) pour collecter des informations. Cela n'a pas de sens de faire plus que cela.
Est-il utile de n'acheter qu'auprès de fournisseurs de confiance ?
tl;dr : Ce n'est pas le cas.
"Lorsqu'il s'agit d'acheter des biens, tout comme pour toute forme de sécurité, il convient de trouver un vendeur de confiance et de n'acheter des disques qu'auprès de lui.
La sécurité (et la sûreté) n'est PAS une question de confiance ! Il s'agit de vérification et de validation ! Désolé, mais c'est une erreur à bien des égards.
Supposons que vous achetiez par l'intermédiaire d'un vendeur de confiance. Quelques questions :
-
Le fournisseur a-t-il testé le matériel pour s'assurer qu'il n'y a pas de perte de données ? Re se rend-il compte qu'il achète de faux disques et les vend ? Pas nécessairement.
-
Est-il possible qu'il achète des produits dont il ne sait pas qu'ils sont faux ? Tout à fait, regardez les récents ryzen fakes : https://www.pcgamer.com/beware-of-fake-ryzen-processors-selling-on-amazon/ , https://www.heise.de/newsticker/meldung/Direkt-von-Amazon-Faelschungen-von-AMDs-Ryzen-Prozessoren-im-Umlauf-3772757.html
-
Si je perds ma présentation dans le lecteur et que je la foire, mon fournisseur de confiance remontera-t-il le temps et me sauvera-t-il ? Il remplacera probablement le lecteur, car la dernière DeLorean à voyager dans le temps a été détruite en 1885.
Autres choses
"Cette question ressemble plus à une "promotion" de ce que l'OP aime, et il semble que l'OP soit beaucoup moins intéressé par le fait de tester les lecteurs.
C'est ridicule. Je cherchais spécifiquement un outil similaire à h2testw qui fonctionne aussi sous linux. Et oui, c'est ce que j'aurais "aimé", réponse utile, désolé. Je ne savais pas que la presse anglophone n'était pas très au fait de ces questions et j'ai eu de la chance de trouver quelque chose comme ça plus tard. Il ne s'agit pas d'une promotion, mais en fait il semble que vous pourriez en utiliser une.