[Tutorial] Come controllare lo stato di salute di un’unità SSD in Linux

Uno dei componenti che ‘lavorano’ di più nel nostro computer e che consideriamo meno è l’hard disk. Ci accorgiamo della sua esistenza magari quando finiamo lo spazio disponibile o se siamo più sfortunati quando si rompe.

Negli ultimi anni i ‘vecchi’ dischi ferromagnetici sono stati sostituiti con i più performanti dischi a stato solido (SSD), dimenticandoci di operazioni diventate obsolete come la deframmentazione dei dati.

Una tecnologia che è sempre valida e la S.M.A.R.T. (Self-Monitoring, Analysis and Reporting Technology) ovvero del monitoraggio dei dischi per rilevare e fornire diversi indicatori di affidabilità, nella speranza di anticipare i malfunzionamenti. Essenzialmente, i malfunzionamenti degli hard disk sono di due tipi:

  • quelli prevedibili, specialmente dovuti all’usura o all’invecchiamento, che si manifestano gradualmente.
  • quelli imprevedibili, che accadono improvvisamente e senza preavviso, come nel caso di un componente elettronico che si brucia.

Il monitoraggio può predire circa il 60% dei possibili malfunzionamenti. S.M.A.R.T. ha lo scopo di avvisare l’utente o l’amministratore di sistema che il disco rigido sta per guastarsi, in modo che questi abbia il tempo di copiare i dati su un altro dispositivo di archiviazione (fonte Wikipedia).

Esistono diversi tool software che permettono di monitorare lo stato di salute dei dischi installati nel nostro sistema. Quello che uso abitualmente sulla mio workstation Ubuntu Linux è smartctl.

Installazione

L’utility smartctl fa parte del pacchetto smartmontools che si installa con il seguente comando:

:> sudo apt install smartmontools/

Nessuna difficoltà visto che il pacchetto fa parte della repository standard di Ubuntu. Se state utilizzando una distribuzione differente il comando potrebbe essere differente. Si noti anche che il suddetto comando provvederà ad installare anche libgsasl7, libkyotocabinet16v5, libmailutils5, libntlm0, mailutils, mailutils-common e postfix.

Utilizzo

Iniziamo con il capire quali sono i dischi presenti nel nostro sistema e come vengono denominati con il seguente comando:

:> df -h

Con questo sappiamo che il disco che vogliamo analizzare è quello denominato dal sistema come Sda1. Per iniziare ad utilizzare lo strumento smartctl, la prima cosa che occorre fare è visualizzare le informazioni sul proprio disco, tramite il comando:

:> sudo smartctl -i /dev/sdX

Dove il parametro sdX deve corrispondere al vostro disco. Il comando come output fornirà tutte le informazioni riguardanti al disco richiesto.

In questo caso il disco è un Sandisk da 128Gb con abilitata la S.M.A.R.T. quindi possiamo proseguire con l’analisi.

Short test

La versione ‘breve’ dei test che dura in media un paio di minuti esaminerà quanto segue:

  • Parte elettrica: le componenti elettroniche del disco saranno testate secondo i parametri del produttore;
  • Parte meccanica: motori e meccanismi di posizionamento saranno testati secondo i parametri del produttore;
  • Controllo lettura dati: una sessione di lettura sarà eseguita su una porzione ‘campione’ del disco secondo i parametri del produttore.

Per iniziare il test inseriamo il seguente  ​​comando:

:> sudo smartctl -t short -a /dev/sdX

Dove il parametro sdX deve corrispondere al disco da analizzare. Come output otterremo immediatamente questo tipo di schermata:

Insieme ad alcuni parametri già disponibili il software ci avvisa che il test sarà pronto tra circa due minuti. Per visualizzare il risultato finale occorre quindi attendere l’ora prevista e quindi dare il seguente comando:

:> sudo smartctl -a /dev/sdX

Nel mio caso non ci sono errori e la salute del disco è buona.

Tutti i test risultano positivamente ‘completati senza errori’.

 

Long test

La versione ‘lunga’ dei test dalla durata media di una ventina di minuti esaminerà il disco nella sua interezza.

Per iniziare il test inseriamo il seguente  ​​comando:

:> sudo smartctl -t long -a /dev/sdX

Lascia un commento