Forum Linux.général Clés USB défectueuses, investigation ?

Posté par  (site Web personnel) . Licence CC By‑SA.
Étiquettes :
3
24
jan.
2017

Bonjour,

Ça me fait 3 clés USB défectueuses en moins d'une année… La première fois, je me suis dis « Pas de bol… » mais là, je me pose des questions sur une éventuelle origine, soit dû au matériel utilisé (plusieurs ordinateurs, USB3 et USB2, récent et de plus de 10 ans, etc.) ou logiciel (GNU/Linux connectés et Windows XP srv.p3 non-connecté à Internet, je vous rassure). Le contexte est particulier et je n'ai pas la maîtrise de ces facteurs-là.

Toutes des Kingston DTR30G2 (les deux première étaient « de 32 Go »)
Ces deux premières clé USB se sont détériorées jusqu'à ne plus présenter d'interface du tout…

Il s'agit de deux achats séparés de plusieurs mois, donc probablement pas un problème de séries.

Ici, j'ai la dernière en date, une clé estampillée « 64 Go ». Et j'en ai d'autres en réserve, exactement "identiques".

La commande dmesg avec cette dernière défectueuse donne ceci :

[688.179164] usb 9-1: new SuperSpeed USB device number 2 using xhci_hcd
[688.207122] usb 9-1: New USB device found, idVendor=0951, idProduct=16a2
[688.207130] usb 9-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[688.207135] usb 9-1: Product: DTR30G2
[688.207139] usb 9-1: Manufacturer: Kingston
[688.207143] usb 9-1: SerialNumber: 0018F30BFEC4BF2021EB00A2
[688.239357] usb-storage 9-1:1.0: USB Mass Storage device detected
[688.240587] scsi host5: usb-storage 9-1:1.0
[689.240092] scsi 5:0:0:0: Direct-Access     Kingston DTR30G2          PMAP PQ: 0 ANSI: 6
[689.240788] sd 5:0:0:0: Attached scsi generic sg2 type 0
[689.540604] sd 5:0:0:0: [sdb] 120979456 512-byte logical blocks: (61.9 GB/57.7 GiB)
[689.541510] sd 5:0:0:0: [sdb] Write Protect is off
[689.541520] sd 5:0:0:0: [sdb] Mode Sense: 23 00 00 00
[689.542435] sd 5:0:0:0: [sdb] No Caching mode page found
[689.542445] sd 5:0:0:0: [sdb] Assuming drive cache: write through
[689.549291]  sdb:
[689.551605] sd 5:0:0:0: [sdb] Attached SCSI removable disk

Et avec une clé de réserve, qui fonctionne bien, j'obtiens un résultat similaire, à l'exception de la ligne suivante :

[822.616033] sd 6:0:0:0: [sdb] 122880000 512-byte logical blocks: (62.9 GB/58.6 GiB)

Vous aurez noté la différence, le nombre de secteurs ! 120979456 plutôt que 122880000 !?.

Qu'est-ce que cela signifie ?

Existe-t-il des outils sous GNU/Linux pour investiguer d'avantage, connaître l'état de la mémoire flash de la clé, son « état de vieillissement » ou ce genre de choses ?

Un équivalent de Memtest86 ?

Le premier symptôme du problème, c'est que cette clé défectueuse n'est plus reconnue par les machines sous Windows de Microsoft, testé avec XP et 7. J'obtiens alors une proposition de formater…

Sous GNU/Linux, le système de fichier est toujours reconnu et fonctionnel… Mais pour combien de temps ?

Qu'en pensez-vous ?

Merci d'avance.

  • # clé usb

    Posté par  . Évalué à -10.

    bonjour à tous
    personnellement je reformate toutes mes nouvelles clés usb sous linux avec gparted
    en FAT32,EXT4,NTFS etc… selon mes besoins et les ordinateurs utilisés
    on peut créer plusieurs partitions dessus avec différents formats de fichiers pour la compatibilité

  • # Disk ?

    Posté par  . Évalué à 1. Dernière modification le 24/01/17 à 17:04.

    Hello,

    Dans Gnome3 il y a l'application "Disk" qui permet d'avoir des infos sur les disques et de tester les supports, est-ce que tu as regardé si tes clés sont vues et les infos que tu peux en tirer ?
    Vu que j'ai le lien dans mon presse papier, gnome-disk-utility sur le wiki d'Ubuntu-fr

    Je suis bien intéressé par la question que tu poses et encore plus pas les réponses que tu vas trouver :-)

    Julien_c'est_bien (y'a pas que Seb)

  • # pas significatif

    Posté par  . Évalué à 0.

    [689.540604] sd 5:0:0:0: [sdb] 120979456 512-byte logical blocks: (61.9 GB/57.7 GiB)

    ou

    [822.616033] sd 6:0:0:0: [sdb] 122880000 512-byte logical blocks: (62.9 GB/58.6 GiB)

    pour moi la difference n'est pas significative, meme si ca fait presque 1GB d'ecart.

    ca reste 62/63GB ca depend juste de savoir si le constructeur arrondi ou pas les comptes quand ils posent les puces, ou si le controleur de la clef garde des secteurs pour lui pour palier à un eventuel defaut

    pour celles qui ne sont plus du tout visible quand tu les branches sur la machine => electronique defectueuse

    cause eventuelle (certaines peuvent etre farfelue) :
    - electrique (electricité statique, port USB foireux)
    - promener ses clefs USB dans la meme poche que le telephone portable (ondes electro magnetiques)

    • [^] # Re: pas significatif

      Posté par  (site Web personnel) . Évalué à 2.

      Sauf qu'on est pas à la boucherie en train d'acheter pour 200 grammes de saucisses… Là, oui, tantôt tu auras "précisément" 208,3 g, tantôt 201,8 g, etc.

      Ici, je vous parle très précisément d'une clé USB, modèle Kingston DTR30G2/64GB

      Je conçois qu'à partir de la spécification « 64 GB », il est hasardeux de présupposé pour un modèle donné ce que cela signifiera en terme d'octets réellement adressables sur le support (typiquement un nombre de secteurs de 512 octets chacun). D'une marque à une autre, d'un modèle à un autre, cela peut être différent.

      Mais pour un même modèle (allons jusqu'à dire d'une même série), ce sera le même nombre d'octets pour différents exemplaires.

      Dans le mon cas, il y a d'abord un dysfonctionnement ! La clé et le système de fichier qui s'y trouve n'est plus reconnu par certains logiciels (ici, le Windows XP et 7 de Microsoft).

      Ce qui m'amène à regarder de plus près et en comparant avec un autre exemplaire (du même modèle, même série) qui lui fonctionne bien… et de constater une différence non négligeable de surcroît en terme d'octets adressables (par secteurs de 512).

      Alors, il se peut que des cellules flash soit déclassées dans la clé usb, et au delà de la réserve prévue pour que cela ne soit pas directement conséquent.

      Mais justement, c'est ce genre d'investigation que j'aimerais pouvoir faire.

      L'équivalent de la SMART pour les disques durs par exemple.

      Il semblerait que cela n'existe pas, ou qu'à travers quelques utilitaires non publié par le fabricant :(

      La seule chose que j'ai pu faire, c'est un

      # badblocks -w -s -o usbstick.log /dev/sdz
      

      Et cela n'a rien donné. Aucune erreurs.

      Quand-bien même le nombre de secteur aurait simplement diminué, pourquoi un re-partitionnement et formatage (en FAT32) sous GNU/Linux n'est pas reconnu par le Windows 7 ou XP ?

      J'insiste, avec un autre exemplaire, cela fonctionne !

      Par contre, avec cette clé considérée défectueuse, le Windows 7 la format en exFat et la clé est miraculeusement lisible et fonctionnelle sous GNU/Linux. Le problème est que, ben d'abord je serai triste de n'avoir pas pu faire ce formatage sous GNU/Linux, et qu'en plus, je suis presque sûr que le Windows XP ne pourra pas l'ouvrir. Hors, dans le contexte où je travail, je ne peut rien y faire.

      Donc voila, pour moi il y a un mystère non résolu concernant cette clé…

      Je me demandais s'il existait des outils plus "sophistiqués" sous GNU pour investiguer l'interface USB tel qu'accessible et géré par le noyau Linux… ?

      • [^] # Re: pas significatif

        Posté par  . Évalué à 3.

        Quand-bien même le nombre de secteur aurait simplement diminué, pourquoi un re-partitionnement et formatage (en FAT32) sous GNU/Linux n'est pas reconnu par le Windows 7 ou XP ?

        J'insiste, avec un autre exemplaire, cela fonctionne !

        Par contre, avec cette clé considérée défectueuse, le Windows 7 la format en exFat et la clé est miraculeusement lisible et fonctionnelle sous GNU/Linux. Le problème est que, ben d'abord je serai triste de n'avoir pas pu faire ce formatage sous GNU/Linux, et qu'en plus, je suis presque sûr que le Windows XP ne pourra pas l'ouvrir. Hors, dans le contexte où je travail, je ne peut rien y faire.

        Donc voila, pour moi il y a un mystère non résolu concernant cette clé…

        ah mais c'est completement different,
        ta clef fonctionne, et parfaitement vu que windows arrive à la lire et à ecrire dessus.

        ce qu'il te faut maintenant c'est comprendre la notion de
        - table de partition MSDOS ou GPT => detecté ou non selon l'OS au tu brancheras la clef
        - le format de la parttion (là, tu semble maitriser FAT32 ou exFAT)

        le MSDOS, c'est la table historique, avec ses limites :
        - pas plus de 4 partitions primaires
        - si plus de 4 partitions necessaires => 3 primaires + 1 etendue qui contiendra les suivante

        mais aussi avec son avantage => reconnu partout (windows, mac, linux, android, whatelse)

        le GPT c'est le "nouveau format" qui a l'avantage de pouvoir avoir autant de partition que tu veux dedans.

        inconvenient, il n'est lisible qu'avec certains systemes recents (linux, osx et windows recents)

        donc si ta clef fonctionne avec windows elle doit fonctionner avec linux (la preuve est qu'il la voit dans dmesg)

        à toi alors de creer la table de partition en mode MSDOS,
        puis la seule partition qu'il y a en general sur une clef USB en FAT32

        • [^] # Re: pas significatif

          Posté par  (site Web personnel) . Évalué à 0.

          J'en ai assez d'être pris pour un con…

          C'est pas ça le problème !

          Franchement, en lisant tout ce que j'ai écrit, t'as pas un peut l'impression que je connais ce genre de choses ?

          • [^] # Re: pas significatif

            Posté par  . Évalué à 4.

            J'en ai assez d'être pris pour un con…

            Tu indiques au départ que tu as des clefs USB qui ne fonctionnent plus. En lisant ça nous comprenons qu'elles sont HS.
            Tu indiques ensuite qu'elles (ou qu'elle ?) fonctionne parfaitement une fois formatés via Windows.
            --> c'est donc un problème logiciel. La clef USB n'y est (probablement) pour rien

            Ou alors tu as mal expliqué quelque chose.

            • [^] # Re: pas significatif

              Posté par  (site Web personnel) . Évalué à 1.

              Les deux premières clés (32Go) sont "totalement défectueuses", mais cela à commencé par le genre de problèmes que je rencontre avec cette 3ème clé…

              Pour tout ceux qui s'intéressent à l'usage des clés USB, je résume donc…

              1°) Je format mes clés avec gparted : création d'une table de partition classique MSDOS + partition (primaire) Fat32 ou NTFS si de gros fichiers doivent pouvoir y être placés et qu'il n'est pas nécessaire de pouvoir insérer la clé directement dans une imprimante par exemple…

              2°) Je prévient toujours le système avant le retrait de la clé, et j'attends bien le signe que toute écriture est terminée. La seule exception est lorsque j'oublie la clé et que j'éteins l'ordinateur. J'attends alors que l'ordinateur soit bien arrêté pour retirer la clé.

              3°) En cas de problème, montage en lecture seule, FS non-reconnu sous Windows :

              • J'insère la clé sous GNU/Linux et avec la commande dmesg je cherche d'éventuels messages d'erreurs ou avertissements. Il peut par exemple s'agir du fameux bit qui est sensé indiquer que le FS à bien été clôturé avant extraction justement. Malgré toute la rigueur possible, cela arrive…

              • Éventuellement, je démonte le FS (attention à ne pas éjecter car alors plus accessible) et j'exécute la commande fsck.vfat -a. Pour une partition NTFS, je le ferais sous Windows.

              • Si des problèmes réapparaissent trop fréquemment, je reformate la clé (1°) après avoir éventuellement sauvegardé son contenu, que je replace ensuite. J'ai pour certaines clés un dossier de sauvegarde sur un ordinateur que je copie "par liens machines"(car ext4) avec cp -al et synchronise ensuite avec rsync -a --delete Je garde ainsi un historique au cas où des fichiers devaient s'avérer plus tard corrompus ou manquants.

              Dans le cas qui nous intéresse (3ème clé, 64Go), le problème persiste. Le FS (Fat32) reste non-reconnu sous Windows XP et 7 :(

              Cela ferait la 3ème clé… Ça commence à bien faire… Et j'aimerais connaître l'origine du problème qui semble pouvoir être une "usure" prématurée. Le contenu de cette clé n'évolue pas énormément. C'est pas comme si je renouvelait 80 % toutes les semaine. C'est plutôt 10 % tout les 3 mois.

              En reformatant, mon attention à été attiré sur la taille de la partition obtenu, la capacité, qui m'a semblé être diminuée par rapport au premier formatage…

              J'ai donc cherché à comparer avec un autre exemplaire du même modèle, supposé même série car achetées ensemble, de réserve et donc non-encore utilisée. Ce que j'ai constaté est une différence de taille au niveau de l'USB Mass Storage (/dev/sdz) :

              120979456 512-byte logical blocks: (61.9 GB/57.7 GiB)
              vs
              122880000 512-byte logical blocks: (62.9 GB/58.6 GiB)
              

              Soit une différence de 29 × 65536 = 1900544 secteurs de 512 octets.

              En interne, je crois savoir qu'une clé usb contient des cellules de réserve. Ces cellules auraient-elles une taille de 225 ? et au delà de la réserve, 29 cellules seraient "grillées" ?

              J'ai effectué une vérification des octets "toujours" disponibles avec

              # badblocks -w -s -o usbstick.log /dev/sdz
              

              et aucune erreurs.

              J'ai ensuite fait l'expérience de formater cette clé sous Windows 7, avec la surprise de n'y avoir pas d'autre choix que exFat. La clé fonctionne sous Windows et sous GNU (malgré exFat breveté, avec fuse donc, par pas intégrable au noyau Linux). Mais étant donné qu'en définitive, c'est sous Windows XP que je dois pouvoir également travailler, je crains que cela ne soit pas une solution.

              Pourquoi formaté sous GNU (MSDOS/Fat32) ne fonctionne pas sous Windows mais bien formaté sous Windows en MSDOS(supposé)/exFAT.

              Alors que, par ailleurs, la nouvelle clé (4ème, 64Go, même modèle que la 3ème), formaté sous GNU/Linux en MSDOS/Fat32 fonctionne très bien sous Windows. La 3ème clé aussi, au début, fonctionnait ainsi très bien…

              C'est comme si au niveau USB, en tant que "Mass Storage" déjà, la détection n'était pas identique sous GNU/Linux et sous Windows. Je ne connais pas assez le Windows que pour y trouver un équivalent au dmesg qui sous GNU/Linux m'informe du "120979456×512 octets" ni d'un équivalent à un badblocks ou à un md5sum…

              • [^] # Re: pas significatif

                Posté par  . Évalué à 2.

                J'ai ensuite fait l'expérience de formater cette clé sous Windows 7, avec la surprise de n'y avoir pas d'autre choix que exFat.

                c'est normal windows detecte que c'est un lecteur flash
                donc tu passes en exFAT

                attention aussi quand tu partitionnes puis formates la clef, il faut respecter les types de partitions

                FAT32 : 0x0B, 0x0C
                exFAT : 0x07

                source : http://ntfs.com/exfat-comparison.htm

                • [^] # Re: pas significatif

                  Posté par  (site Web personnel) . Évalué à 1.

                  Bien qu'en théorie une partition en Fat32 puisse aller jusqu'à 16 Tio (ou 8, selon…) et plus probablement du fait de la limite de taille maximum d'un fichier, 4 Gio, sous Windows, au delà de 32 Go, c'était jusqu'à il y a "peu" NTFS qui était "proposé". Cf. Wikipédia…

                  Depuis "peu" donc, le nouveau exFAT existe (avec licence à payer à Microsoft) et est de plus en plus utilisé pour les supports numérique au-delà des 32 Go ; (cf. microSDXCexFAT )

                  Par contre, je suis donc surpris que l'option NTFS ne soit "pas proposée" par leur Windows 7. ExFat est l'unique option d'une liste déroulante.

                  Est-ce donc cela qui est « normal » ?

                  Et alors, quand "je partitionne", j'utilise un logiciel qui gère lui-même l'identifiant du type de partitions, 0x0B, 0x0C, 0x07, etc. En l'occurrence, GParted et le logiciel inclus dans le Windows 7, t'en penses quoi ? Tu crois que je dois vérifier ?

          • [^] # Re: pas significatif

            Posté par  . Évalué à 1.

            Système de fichier microsoft corrompu sur clef usb sous linux, ça m'arrivait régulièrement puis j'ai compris qu'il fallait démonter le système de fichier et attendre que l'écriture soit fini. Soit via la diode lumineuse soit via un sync dans un terminal. Note que la notification de fin d'écriture sous les différents environements de bureau n'est (de mon expérience) pas fiable.

          • [^] # Re: pas significatif

            Posté par  . Évalué à 1.

            J'en ai assez d'être pris pour un con…

            Je ne penses pas que ce soit le cas par quiconque ici. Si les réponses te paraissent éloignées du problème que tu soumets c'est peut-être parce qu'on l'a mal compris.
            Tu aurais dû être plus synthétique dans la description de ton problème, il aurait sans doute été plus compréhensible.
            Ne nous énervons pas.
            ++

            Julien_c'est_bien (y'a pas que Seb)

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.