Mon Raspberry Pi endommage-t-il définitivement les cartes SD?

26

Mon Raspberry Pi fonctionnait bien depuis deux mois. Ensuite, certains fichiers ont /usr/binété corrompus et il y avait de nombreuses erreurs au redémarrage.

J'ai essayé d'écrire une nouvelle image mais dd bloquait et ne faisait rien.

sudo dd if=~/2013-02-09-wheezy-raspbian.img of=/dev/mmcblk0 bs=4M

J'ai remarqué que ma carte SD n'était pas répertoriée comme compatible, j'ai donc commencé avec une nouvelle carte SD prise en charge il y a une semaine et maintenant la même chose s'est produite.

Les cartes semblent être bloquées en lecture seule ddet fdiskn'ont aucun impact.

J'ai tiré le cordon d'alimentation plusieurs fois pour redémarrer après avoir sshcessé de fonctionner - je le fais fonctionner sans moniteur ni clavier.

Est-il possible d'endommager définitivement une carte SD en tirant sur le cordon d'alimentation?

J'ai lu des informations sur des cartes SD corrompues et j'aimerais aller au fond de ce problème, mais ma préoccupation actuelle est que je dois acheter une nouvelle carte SD chaque fois que j'essaye. Pour d'autres, ils semblent pouvoir recommencer en écrivant une nouvelle image.

Y a-t-il autre chose que je peux essayer de faire fonctionner à nouveau les cartes SD?

Si j'essaie de formater la carte avec mon appareil photo, il indique «erreur de formatage».

Lorsque j'insère le dmesg de la carte SD ,

...
[52254.614980] end_request: I/O error, dev mmcblk0, sector 1696056
[52254.614983] end_request: I/O error, dev mmcblk0, sector 1696064
[52254.614987] end_request: I/O error, dev mmcblk0, sector 1696072
[52254.615058] Aborting journal on device mmcblk0p2-8.
...
[52666.031183] journal commit I/O error
[52666.031186] journal commit I/O error
....
[52666.031220] journal commit I/O error
[52666.031227] journal commit I/O error
[52666.083902] EXT4-fs error (device mmcblk0p2): ext4_put_super:819:     
Couldn't clean up the journal
[52666.083910] EXT4-fs (mmcblk0p2): Remounting filesystem read-only

Mise à jour: J'ai réussi à écrire une nouvelle image sur la deuxième carte SD, mais la première carte (Kingston 8 Go classe 4, pas sur la liste prise en charge) est toujours cassée. Comme ce n'est qu'une seule carte qui semble cassée, je ne suis pas si inquiet que cela continue. Je suppose que c'était une pièce unique.

Mon Raspberry Pi démarre désormais rarement. J'ai vérifié la tension sur le Raspberry Pi, et elle est assez basse, donc je soupçonne que c'est la cause de mes problèmes. J'ai commandé une nouvelle alimentation. Cependant, je ne sais pas pourquoi le Raspberry Pi a fonctionné si longtemps auparavant.

Thomas Rynne
la source
1
Pourriez-vous s'il vous plaît confirmer que lorsque vous essayez d'écrire quelque chose sur des cartes cassées, vous utilisez un autre ordinateur avec lecteur de carte SD qui fonctionne bien pour d'autres cartes? Pourriez-vous fournir la ddcommande que vous utilisez pour écrire sur la carte? Pourriez-vous vérifier dmesgs'il y a des erreurs d'E / S sur votre carte?
Krzysztof Adamski
Si vous allez couper l'alimentation du Pi, assurez-vous que ce soit brusquement et pas lentement. Tirer le cordon lentement peut éventuellement endommager vos cartes SD. Je suggère fortement d'obtenir une source d'alimentation avec un interrupteur d'alimentation. Une fois que j'ai commencé à utiliser un interrupteur d'alimentation au lieu de simplement retirer le cordon d'alimentation du Pi, je n'ai jamais eu une carte SD corrompue. De plus, votre choix d'alimentation est très important. Assurez-vous qu'elle est d'au moins 1000 mA et qu'elle a une sortie cohérente. Je n'alimenterais pas non plus le Pi à partir du même concentrateur USB que vous utilisez pour le connecter à des appareils.
Jerry Gagnon
A eu le même problème, une corruption absolument bizarre rendant le démarrage d'une séance de merde. Après avoir obtenu une alimentation dédiée certifiée Raspberry Pi et une nouvelle carte SD, tous mes problèmes ont disparu. L'ancienne carte SD ne pouvait être réutilisée qu'après avoir trouvé une machine Windows et exécuté le formateur gratuit de bas niveau de l'association SD. Ils affirment qu'aucun formateur de niveau bloc ne peut produire le véritable formatage de bas niveau nécessaire pour réparer complètement les cartes SD problématiques. YMYV
volé
J'ai trois Raspberry Pi et j'ai eu le même problème. J'ai maintenant eu deux cartes SD devenues corrompues et en lecture seule et aucune astuce utilisant fsck, fdisk ou tout autre utilitaire sous Linux ou Windows ne les a corrigées. Sur un coup de tête, j'ai décidé de jeter l'une des cartes dans mon appareil photo Samsung et d'essayer de la formater. À ma grande surprise et ravissement, la fonction de formatage de l'appareil photo a restauré la carte et elle est à nouveau utilisable. Malheureusement, je ne peux pas récupérer l'autre carte avec cela car c'est une carte SD pleine taille et non un MicroSD avec un adaptateur et mon appareil photo a la fente MicroSD. L'appareil photo est un Samsung ST72, juste pour info.
Kelli Mac

Réponses:

11

Problèmes et dommages potentiels

Oui, l'arrêt du Raspberry Pi en tirant sur le cordon peut provoquer des dommages . En fait, il y avait une réponse qui détaillait exactement cette question. Ce problème n'est pas spécifique au Raspberry Pi. Retirer le câble d'alimentation sans avertir le système d'exploitation peut provoquer des problèmes - j'ai corrompu mon noyau Windows de cette façon.

Comment réparer

  1. Mac

Branchez la carte SD sur le Mac. Ensuite, ouvrez l' utilitaire de disque et supprimez vos partitions. Puis restaurez. Enfin, réimaginez la carte. Si vous avez besoin d'aide, consultez ce tutoriel .

  1. les fenêtres

Utilisez le logiciel Win32 Disk Imager . Encore une fois, supprimez les partitions, restaurez-la, puis réimaginez la carte.

  1. Linux

Pour réinitialiser le SD en lecture-écriture, tapez hdparm -r0 /dev/xxxdans le terminal. Vous devrez peut-être d'abord supprimer les partitions.

Comment éviter

À partir de maintenant, vous ne devez plus arrêter le Raspberry Pi en le débranchant . Accédez plutôt à la console et tapez:

sudo shutdown -h now

Ou, si vous utilisez startx, cliquez sur le bouton de déconnexion et sélectionnez arrêt.

xxmbabanexx
la source
14
Pour autant que je sache, il n'est pas possible d'endommager la carte SD elle-même en coupant l'alimentation. Il est cependant possible d'endommager le système de fichiers sur la carte.
Krzysztof Adamski
2
La plupart des systèmes de fichiers modernes sont des systèmes de fichiers journalisés et ne seront pas corrompus par une perte de puissance de cette façon (bien qu'ils puissent perdre les modifications les plus récentes). Cependant, les cartes mémoire ont tendance à mentir au noyau sur ce qui a été synchronisé. CECI conduit à des systèmes de fichiers corrompus.
DonGar
J'ai eu des pannes de courant inattendues pour faire frire ma carte SD là où aucune quantité d'essuyage et de réimagerie ne "prendrait", il semblait y avoir de mauvais secteurs qui feraient échouer la réinstallation. J'ai dû acheter une nouvelle carte. Alors oui, vous pouvez endommager la carte elle-même.
Yamikuronue
Un autre moyen, plus court, d'éteindre le pi est «sudo stop».
Matthew
Une meilleure façon de reformater les cartes SD sous Windows et Mac OS est d'utiliser le SD Formatter de l' association SD . C'est la façon officielle dont vous êtes censé formater les cartes.
scruss
5

Le problème est que vous ne pouvez pas accéder à la console car le Raspberry Pi est bloqué, SSH fonctionne en partie mais n'accepte pas de mot de passe, et WebIDE d'Adafruit est bloqué et n'acceptera pas d'entrée. Il n'y a pas d'autre choix que de débrancher la fiche. Environ 25% du temps, cela fonctionne, mais il est inévitable que le système de fichiers soit éventuellement corrompu. Cela empire car même si le chargeur de démarrage vous dépose dans le noyau, il est également bloqué et vous ne pouvez rien taper pour fsck la carte. Réimaginer signifie perdre tout votre travail. Nous avons certainement besoin d'une meilleure solution.

user1718232
la source
2

Vous pouvez utiliser 'hdparm -r0 / dev / xxx' pour le réinitialiser en lecture-écriture. J'ai personnellement dû supprimer les partitions et réinsérer la carte SD pour pouvoir utiliser dd pour copier une nouvelle image sur la carte.

Steven Verborgh
la source
J'ai essayé, mais jj bloque toujours. Je pense que la carte doit être cassée.
Thomas Rynne
0

Il y a une meilleure solution - il suffit de mettre la carte dans un lecteur connecté à une autre machine et d'exécuter fsck à partir de cette machine [alors j'espère que ça marche!]. Bien sûr, le vrai problème est d'avoir à exécuter fsck en premier lieu - ce qui peut souvent être évité en arrêtant correctement la machine plutôt qu'en tirant sur l'alimentation, qu'elle soit sans tête ou non.

Juste moi
la source
0

Après l'échec répété de dd sur une carte SD, j'ai utilisé une machine Windows 7 pour supprimer les partitions et reformater en FAT32 . Ce n'est qu'alors que dd me donnerait une image de Raspberry Pi fonctionnelle.

Maintenant, je lance souvent ce qui suit avant dd (ou dcfldd) -ing une nouvelle image:

time dcfldd if=/dev/zero of=/dev/sdc statusinterval=1 sizeprobe=of

La source suggérant /dev/zeroa noté que le processus pourrait raccourcir la durée de vie de la carte.

Rob
la source