Il mio Raspberry Pi danneggia in modo permanente le schede SD?


26

Il mio Raspberry Pi ha funzionato bene per due mesi. Quindi alcuni file sono /usr/binstati danneggiati e ci sono stati molti errori al riavvio.

Ho provato a scrivere un'immagine nuova ma dd avrebbe bloccato e non avrebbe fatto nulla.

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

Ho notato che la mia scheda SD non era elencata come compatibile, quindi ho iniziato con una nuova scheda SD supportata una settimana fa e ora è successa la stessa cosa.

Le carte sembrano bloccate in uno stato di sola lettura dde fdisknon hanno alcun impatto.

Ho tirato il cavo di alimentazione alcune volte per riavviare dopo aver sshsmesso di funzionare - lo eseguo senza monitor e tastiera.

È possibile danneggiare permanentemente una scheda SD tirando il cavo di alimentazione?

Ho letto delle schede SD danneggiate e vorrei arrivare alla fine di quel problema, ma la mia preoccupazione attuale è che devo acquistare una nuova scheda SD ogni volta che provo. Per altre persone sembrano poter ricominciare scrivendo una nuova immagine.

C'è qualcos'altro che posso provare a far funzionare di nuovo le schede SD?

Se provo a formattare la scheda con la mia fotocamera, dice "errore di formattazione".

Quando inserisco la scheda SD dmesg mostra

...
[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

Aggiornamento: sono riuscito a scrivere un'immagine nuova sulla seconda scheda SD, ma la prima scheda (Kingston 8 GB classe 4, non nell'elenco supportato) è ancora rotta. Poiché è solo una carta che sembra rotta, non sono così preoccupato che continuerà ad accadere. Immagino fosse una tantum.

Il mio Raspberry Pi ora si avvia raramente. Ho controllato la tensione sul Raspberry Pi ed è piuttosto bassa, quindi sospetto che sia la causa dei miei problemi. Ho ordinato un nuovo alimentatore. Tuttavia, non so perché il Raspberry Pi abbia funzionato per così tanto tempo prima.


1
Potresti confermare che quando provi a scrivere qualcosa su schede rotte stai usando qualche altro computer con lettore di schede SD che funziona bene con altre carte? Potresti fornire il ddcomando che stai usando per scrivere sulla carta? Potresti verificare dmesgse ci sono errori I / O sulla tua scheda?
Krzysztof Adamski,

Se stai per tagliare il potere al Pi assicurati che sia bruscamente e non lentamente. Estrarre il cavo lentamente può eventualmente danneggiare le schede SD. Consiglio vivamente di ottenere una fonte di alimentazione con un interruttore di alimentazione. Una volta che ho iniziato a utilizzare un interruttore di alimentazione invece di estrarre il cavo di alimentazione dal Pi, non ho mai avuto una scheda SD danneggiata. Inoltre, la scelta dell'alimentatore è molto importante. Assicurarsi che sia almeno 1000 mA e che abbia un'uscita coerente. Inoltre non alimenterei il Pi dallo stesso hub USB che stai usando per collegarlo ai dispositivi.
Jerry Gagnon,

Ha avuto lo stesso problema, la corruzione assolutamente bizzarra che ha reso l'avvio di una cazzata. Dopo aver ottenuto un alimentatore certificato Raspberry Pi dedicato e una nuova scheda SD, tutti i miei problemi sono scomparsi. La vecchia scheda SD poteva essere riutilizzata solo dopo aver trovato un computer Windows e aver eseguito il formatter di basso livello gratuito dall'associazione SD. Dichiarano che nessun formattatore a livello di blocco può produrre la vera formattazione di basso livello necessaria per riparare completamente le schede SD problematiche. YMYV
Rob

Ho tre Raspberry Pi e ho avuto lo stesso problema. Ora ho avuto due schede SD danneggiate e di sola lettura e nessun trucco con fsck, fdisk o altre utilità in Linux o Windows le ha riparate. Per un capriccio, ho deciso di gettare una delle carte nella mia fotocamera Samsung e provare a formattarla. Con mia sorpresa e gioia, la funzione di formattazione della fotocamera ha ripristinato la scheda ed è nuovamente utilizzabile. Sfortunatamente, non riesco a recuperare l'altra scheda con questa poiché è una scheda SD full size e non una MicroSD con un adattatore e la mia fotocamera ha lo slot MicroSD. La fotocamera è una Samsung ST72, solo FYI.
Kelli Mac

Risposte:


11

Problemi e danni potenziali

Sì, spegnere Raspberry Pi estraendo il cavo può causare danni . In effetti, c'era una risposta che descriveva esattamente questo problema. Questo problema non è specifico per Raspberry Pi. Rimuovere il cavo di alimentazione senza preavviso per il sistema operativo può causare problemi: ho corrotto il kernel di Windows in quel modo.

Come risolvere

  1. Mac

Collega la scheda SD al Mac. Quindi, apri Utility Disco ed elimina le tue partizioni. Quindi ripristinare. Infine, ri-immagine della scheda. Se hai bisogno di ulteriore aiuto, consulta questo tutorial .

  1. finestre

Utilizzare il software Win32 Disk Imager . Ancora una volta, elimina le partizioni, ripristinalo e quindi ri-immagine della scheda.

  1. Linux

Per ripristinare la SD in lettura-scrittura, digitare hdparm -r0 /dev/xxxnel terminale. Potrebbe essere necessario eliminare prima le partizioni.

Come evitare

Da ora in poi, non si dovrebbe mai spegnere Raspberry Pi scollegandolo . Invece, vai alla console e digita:

sudo shutdown -h now

Oppure, se si utilizza startx, fare clic sul pulsante di disconnessione e selezionare spegnimento.


14
Per quanto ne so, non è possibile danneggiare la scheda SD stessa estraendo l'alimentazione. Tuttavia, è possibile danneggiare il filesystem sulla scheda.
Krzysztof Adamski,

2
La maggior parte dei file system moderni sta eseguendo il journaling dei file system e non verrà danneggiata perdendo energia in questo modo (anche se potrebbero perdere le modifiche più recenti). Tuttavia, le schede di memoria tendono a mentire al kernel su ciò che è stato sincronizzato. Questo porta a filesystem corrotti.
DonGar,

Ho avuto interruzioni di corrente impreviste per friggere la mia scheda SD fino a quando nessuna quantità di ripulitura e re-imaging si "prenderebbe", sembra che ci siano settori danneggiati che farebbero fallire la reinstallazione. Ho dovuto comprare una nuova carta. Quindi sì, puoi danneggiare la carta stessa.
Yamikuronue,

Un altro modo più breve di spegnere il pi è 'sudo halt'.
Matteo,

Un modo migliore per riformattare le schede SD su Windows e Mac OS è utilizzare SD Formatter della SD Association . È il modo ufficiale in cui dovresti formattare le schede.
scruss,

5

Il problema è che non è possibile accedere alla console poiché Raspberry Pi è bloccato, SSH funziona parzialmente ma non accetta una password e il WebIDE di Adafruit è bloccato e non accetta input. Non c'è altra scelta che staccare la spina. Circa il 25% delle volte funziona, ma alla fine è inevitabile che il file system venga danneggiato. Peggio ancora, anche se il boot loader ti fa cadere nel kernel, anch'esso è bloccato e non puoi digitare nulla per salvare la scheda. Reimaging significa perdere tutto il tuo lavoro. Abbiamo sicuramente bisogno di una soluzione migliore.


2

Puoi usare 'hdparm -r0 / dev / xxx' per resettarlo in lettura-scrittura. Personalmente ho dovuto eliminare le partizioni e reinserire la sdcard per poter usare dd per copiare una nuova immagine sulla scheda.


Ci ho provato, ma ho ancora bloccato. Penso che la carta debba essere rotta.
Thomas Rynne,

0

C'è una soluzione migliore: basta inserire la scheda in un lettore collegato a un'altra macchina ed eseguire fsck da quella macchina [quindi spero che funzioni!]. Ovviamente, il vero problema è di dover eseguire fsck in primo luogo, cosa che spesso può essere evitata spegnendo correttamente la macchina invece di tirare la forza, indipendentemente dal fatto che sia senza testa.


0

Dopo aver fallito ripetutamente su una scheda SD, ho usato una macchina Windows 7 per eliminare le partizioni e riformattare come FAT32 . Solo allora mi darebbe un'immagine funzionante di Raspberry Pi.

Ora eseguo spesso quanto segue prima di dd (o dcfldd) -ing una nuova immagine:

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

La fonte suggerisce /dev/zeroche il processo potrebbe ridurre la durata della carta.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.