Questo test automatico SMART indica un'unità guasta?


10

Mi chiedo se i risultati di questo autotest SMART indicano un'unità guasta, questa è l'unica unità che genera "completato: errore lettura" nei risultati.

# smartctl -l selftest /dev/sde
smartctl version 5.38 [i686-pc-linux-gnu] Copyright (C) 2002-8 Bruce Allen
Home page is http://smartmontools.sourceforge.net/

=== START OF READ SMART DATA SECTION ===
SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)   LBA_of_first_error
# 1  Extended offline    Completed: read failure       90%      8981         976642822
# 2  Extended offline    Aborted by host               90%      8981         -
# 3  Extended offline    Completed: read failure       90%      8981         976642822
# 4  Extended offline    Interrupted (host reset)      90%      8977         -
# 5  Extended offline    Completed without error       00%       410         -

L'unità non mostra ancora alcun segno di guasto, a parte l'output di quel SMART autotest. Questo è l'output di un'unità diversa nello stesso sistema su cui è attualmente in esecuzione un test automatico SMART

# smartctl -l selftest /dev/sdc
smartctl version 5.38 [i686-pc-linux-gnu] Copyright (C) 2002-8 Bruce Allen
Home page is http://smartmontools.sourceforge.net/

=== START OF READ SMART DATA SECTION ===
SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Extended offline    Self-test routine in progress 30%     15859         -
# 2  Extended offline    Completed without error       00%      9431         -
# 3  Extended offline    Completed without error       00%      8368         -


SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       1
  3 Spin_Up_Time            0x0027   176   175   021    Pre-fail  Always       -       4183
  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       48
  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x002e   100   253   000    Old_age   Always       -       0
  9 Power_On_Hours          0x0032   088   088   000    Old_age   Always       -       8982
 10 Spin_Retry_Count        0x0032   100   253   000    Old_age   Always       -       0
 11 Calibration_Retry_Count 0x0032   100   253   000    Old_age   Always       -       0
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       46
192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       34
193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       13
194 Temperature_Celsius     0x0022   111   101   000    Old_age   Always       -       36
196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0
197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       1
198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       1
200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       2

4
Sarebbe molto più utile se hai eseguito smartctl -a /dev/sdee pubblicato la sezione etichettata SMART Attributes Data Structureche contiene contatori grezzi. In particolare, il primo è quello Raw_Read_Error_Rateche è il miglior indicatore di "disco difettoso" (e probabilmente sarà! 0 nel tuo caso).
Chris S

1
Aggiunto. . . . . . . . . .
Jeff Welling,

1
I dati che hai aggiunto sembrano abbastanza buoni. Se l'unità fa parte di un array RAID, non me ne preoccuperei. Dovresti innanzitutto eseguire il backup dei file importanti; ora è un buon momento per iniziare se non lo fai.
Chris S,

4
@Jeff Welling: non essere un pedante a riguardo, ma se il tuo "backup" è nell'array RAID, non è un "backup", è una "copia". Personalmente, se fossi in me, sostituirei l'unità al segnale di guasto dell'unità. Al giorno d'oggi, per quel poco che costa guidare bene, l'assicurazione vale la pena. Inoltre, ho riscontrato due guasti alle unità, nello stesso array (RAID10), nello stesso giorno. Dei 6 che erano nella matrice. FWIW.
Kendall,

1
@Kendall, penso che significhi che l'array viene utilizzato per i backup e gli originali sono altrove. Se questo è il caso, mi piacerebbe che sia un po 'improbabile che due unità si guastino (a meno che non siano nuove unità, la mortalità infantile è un problema comune e il burn in è una pratica comune in array di grandi dimensioni).
Chris S,

Risposte:


8

Spero che tu abbia da tempo sostituito l'unità, ma dal momento che nessuno ha ancora risposto direttamente alla domanda ...

Sono stati eseguiti due test, entrambi i quali non sono riusciti a leggere lo stesso settore logico del disco, come indicato dallo Completed: read failurestesso LBA in entrambi i test. Ciò indica che il disco presenta un difetto e dovresti riuscire a sostituirlo in garanzia. Tentare di archiviare i dati in questo settore può o meno causare all'unità notare che è difettosa durante il processo di scrittura e rimappare il settore, ma se l'unità non si accorge e non può leggere i dati in un secondo momento, hai perso esso.


4

Vale la pena rischiare i dati su un'unità sospetta?

Se fossi in me, sostituirei l'unità e sarei grato che SMART mi abbia risparmiato un grosso mal di testa.


Inoltre, avrei almeno impostato uno script cron per eseguire smart una volta alla settimana sulle tue unità e poi avrei inviato l'output in un rapporto o e-mail ogni settimana in modo che nella maggior parte dei casi sia possibile identificare in anticipo quali unità potrebbero trovarsi sull'ultima gamba per evitare di dover recuperare da un errore e ripristinare dai backup. Ancora più facile se hai più macchine sta usando uno strumento di monitoraggio come Nagios o Munin.
Wilshire,

5
È più facile fare quando sai quale output intelligente indica un'unità guasta, è difficile dire cosa fa e non indica un'unità guasta.
Jeff Welling,

4

Voglio aggiungere ai commenti nell'altra risposta, ma non posso a causa della mancanza di rappresentante, andare a capire.

Non è necessario creare uno script cron, nel pacchetto smartmontools è presente un demone smartd che gestisce esattamente ciò che si desidera fare: controllo regolare dello stato SMART. Tutto ciò che serve è creare una configurazione e avviare il servizio. Il pacchetto smartmontools contiene anche alcuni script di esempio che smartd può chiamare quando qualcosa inizia a fallire.


Non sto usando uno script cron, sto usando il demone smartd. Sputa le note nel registro di sistema, ho notato alcune righe che normalmente non vedo su nessun'altra unità e ho tentato un autotest, che quando ho controllato era fallito. Non avevo mai visto questo tipo di fallimento prima, quindi ho pensato che la gente qui avrebbe potuto. L'output syslog di smartd è piuttosto enigmatico se non hai molta esperienza con esso, non ti dice esattamente "Drive X sta morendo e deve essere sostituito" anche se sarebbe bello se lo facesse :)
Jeff Welling,

2

Cosa farò nella tua situazione?

Prima di tutto scopro quali file sono interessati. Ci sono alcune istruzioni su come farlo http://smartmontools.sourceforge.net/badblockhowto.html#e2_example1 Sì. Nel tuo caso è più difficile perché hai un array. Ma è possibile Quindi, assicurarsi che questo file sia sottoposto a backup, quindi scrivere zero nel settore in errore. Possono succedere due cose. 1. L'unità scrive correttamente gli zero in questo settore. Current_Pending_Sector, Reallocated_Sector_Ct dovrebbe essere successivamente zero. 2. L'unità non riesce a scrivere in questo settore. Quindi rimappa questo settore in un'area "di riserva".

In ogni caso si finisce con un disco fisso. Dovresti ripristinare il tuo file dal backup (perché hai sovrascritto un settore di esso). Inoltre, è necessario ripetere l'autotest esteso per assicurarsi che non vi siano più errori.

Stai in salute!

PS So che questo post è un po 'vecchio. Ma l'ho preso in giro. E penso che sia una buona idea fornire un'altra buona risposta.


1
informazioni utili! Andando a provare questo ora
kerridge0,

0

L'unità probabilmente stava uscendo. Non essere in grado di leggere da parte dell'unità è sicuramente una condizione di errore ed è certamente possibile che accada senza altri segni tipici di errore del disco. Questo tipo di cose non è comunemente transitorio; senza altri segni potrebbe essere una testa debole, un problema di allineamento molto leggero o un'area difettosa su un piatto (cilindro?).

L'altra alternativa è che c'era un bug SMART; non vuoi davvero far funzionare un disco con firmware difettoso.

Ogni volta che si vede alcun errore da SMART, è un segno forte che si dovrebbe ottenere una nuova unità per evitare la perdita di dati. È inteso come un sistema di allarme rapido, in parte.


0
  • Esegui il backup il prima possibile!

  • Se l'unità è ancora in garanzia, allora

    • eseguire l'utilità di verifica del fornitore (di solito è possibile ottenere un cd di avvio)
    • se questo restituisce un errore, bingo, rispedirlo e attendere la sostituzione
    • ripristinare dal backup
    • problema risolto - FINE

  • Se questa unità non è coperta da garanzia, si è avvitati
    • c'è ancora qualche speranza ...
    • dato che in realtà si tratta solo di un errore di lettura, ciò non significa che non è possibile scrivergli
    • dopo aver effettuato un backup puoi provare a ripristinare il backup in quanto sovrascriverà i settori illeggibili con nuovi dati che puoi effettivamente rileggere (bene, di solito funziona, in background l'unità rimappa questi blocchi in settori di riserva per la maggior parte del tempo )
    • badblocks lo strumento può essere utilizzato anche per questo (hai già i backup, giusto?)
      • in realtà non lo usi per testare il disco (non ha molto senso con mai i dischi comunque), ma per scrivere in questi settori più volte
    • puoi rieseguire i test intelligenti e c'è la possibilità che questi settori illeggibili si "correggano"
    • problema NON risolto, hai prolungato la durata dell'unità, probabilmente si guasterà più velocemente del normale forse in un anno a seconda del suo utilizzo, ma hey i dischi sono economici, prendine uno nuovo se i tuoi dati sono importanti per te - END

1
I dischi rigidi moderni (come dall'inizio del secolo) non funzionano come descritto nella sezione "nessuna garanzia".
Chris S,

3
Inizia con l' articolo Bad Sector di Wikipedia . I dischi rigidi astraggono l'indirizzo del settore logico e lo associano a settori che ritiene siano buoni. Alcune utility del fornitore (a volte SMART, a seconda di ciò che è esposto dall'unità) possono riferire sui settori rimappati. I settori danneggiati vengono rilevati nelle operazioni di scrittura normalmente. Di solito, una volta scritto, può essere letto di nuovo; è l'operazione di scrittura iniziale che di solito fallisce nei settori danneggiati. Una volta che un settore è cattivo è un male per sempre, non è possibile "correggerlo".
Chris S

1
Penso di non aver detto nulla di contrario a ciò che stai dicendo, ma ho chiarito un po 'per renderlo più "tecnicamente corretto".
cstamas,

2
Non sono sicuro del motivo per cui le persone hanno votato verso il basso la tua risposta. Penso che tu sia perfetto. Le persone probabilmente hanno frainteso che stai sostenendo di mantenere in funzione un disco instabile. Ma considerando che l'OP è un utente domestico, il costo di una nuova unità può benissimo essere un problema, anche ai prezzi di oggi. So che questa è una domanda piuttosto vecchia, ma da me, almeno, ottieni un +1. ;)
Markus A.

2
@cstamas: posso anche concordare sul fatto che la tua risposta è perfetta - se un'unità sopravvive a una corsa completa badblocks -w(3x di scrittura, 3x di lettura) senza creare nuovi settori danneggiati, la terrò. Altrimenti è troppo rotto per essere usato da qualche parte.
mt_
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.