Barra laterale

sistema:smartmontools

Controllare lo stato degli hd

Autore: Fabio Di Matteo
Ultima revisione: 17/05/2016 - 13:37

In questo articolo analizzeremo tutte le principali tecniche di base per controllare lo stato dei nostri drive. Prima cominceremo con il cercare badblocks (settori danneggiati) e poi vedremo come visualizzare informazioni sullo stato e lanciare test diagnostici grazie a Smartmontools .

Ricerca badblocks

Ricerca non distruttiva di blocchi danneggiati

Test scrittura/lettura non distruttivo:

sudo badblocks -nsv -c 8192 -o errori.log /dev/<device> 

maggiori info: badblocks verificare riparare(?) un hdd con settori guasti

Ricerca in lettura/scrittura (DISTRUTTIVA!!!)

ATTENZIONE!!! - Il seguente metodo distrugge completamente i dati contenuti nel dispositivo.
sudo badblocks -w -s -v -c 8192 -o errori.log /dev/<device>

E' possibile inoltre tentare di informare il filesystem su quali settori risultano danneggiati in modo tale da tentare di isolarli:

mkfs.<filesystem-type> -l errori.log /dev/<device>

Maggiori info su: https://wiki.archlinux.org/index.php/Badblocks

Visualizzare informazioni su dischi rigidi

Il seguente comando visualizza informazioni sul disco rigido /dev/sda:

sudo smartctl -i /dev/sda

Se il comando dovesse fallire è possibile specificare il tipo di interfaccia del disco tramite il comando sudo smartctl -d TYPE -i /dev/sda dove TYPE puo' essere ata, scsi, sat .

Attivare smart sul disco

Per attivare smart sul disco è possibile lanciare il seguente comando:

sudo smartctl -s on /dev/sda

Eseguire test sul disco

Alcuni test possono impiegare molto tempo, tramite il comando sudo smartctl -c /dev/sda è possibile avere una previsione dei tempi. A seguire alcuni dei test piu' comuni da eseguire su un disco.

Overall health

sudo smartctl -H /dev/sda

Se il test non ritorna la stringa “PASSED” sara' meglio fare un backup dei dati.

Short test

sudo smartctl -t short /dev/sda

Long test

sudo smartctl -t long /dev/sda

Leggere il risultato dei test

I comandi dei test vengono eseguiti in background dunque per sapere a che punto è un test è possibile lanciare il comando:

sudo smartctl -l selftest /dev/sda

Se tutto è andato bene dovremmo avere un output simile a questo:

=== 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  Short offline       Completed without error       00%     21472         -

sistema/smartmontools.txt · Ultima modifica: 18/04/2018 - 15:50 (modifica esterna)