Se si utilizza un server VPS o dedicato, la stabilità del disco non è opzionale, ma è fondamentale. Un singolo disco guasto può causare la perdita di dati, tempi di inattività e costosi interventi di ripristino. Ecco perché gli amministratori di sistema Linux si affidano a smartctl, un potente strumento a riga di comando che consente l’accesso diretto alla diagnostica delle unità tramite S.M.A.R.T.
Questa guida vi guida all’uso di smartctl su Linux, con comandi pratici, esempi reali e automazione intelligente.
smartctl fa parte del pacchetto Smartmontools. Consente di accedere alla tecnologia S.M.A.R.T. (Self-Monitoring, Analysis and Reporting Technology), integrata nella maggior parte dei moderni HDD e SSD.
Con smartctl è possibile:
L’hardware supportato comprende:
Vantaggi | Vantaggi |
---|---|
Rilevamento precoce dei guasti | Prevenzione della perdita di dati prima che avvenga |
Diagnostica in tempo reale | Monitoraggio delle unità senza riavvio |
Automazione semplice | Funziona bene con cron, script e avvisi |
Visibilità a livello hardware | Nessuna congettura: ottenete i dati grezzi dall’unità |
Facile da usare per DevOps e sysadmin | Ampiamente utilizzato nei datacenter e nei server cloud |
L’installazione dipende dalla distribuzione Linux in uso:
OS | Comando di installazione |
---|---|
Ubuntu/Debian | sudo apt update && sudo apt install smartmontools |
CentOS/RHEL | sudo yum install smartmontools |
Fedora | sudo dnf install smartmontools |
Arch Linux | sudo pacman -S smartmontools |
Una volta installato, il comando smartctl è disponibile tramite il terminale.
Comando | Cosa fa |
---|---|
smartctl -i /dev/sda | Visualizza le informazioni sull’unità |
smartctl -H /dev/sda | Controlla lo stato di salute generale |
smartctl -A /dev/sda | Elenca gli attributi dettagliati S.M.A.R.T |
smartctl -t short /dev/sda | Avvia un breve autotest (2 minuti) |
smartctl -t long /dev/sda | Avvia un autotest completo ed esteso (10-60 minuti) |
smartctl -l selftest /dev/sda | Mostra la cronologia dei test |
smartctl -l error /dev/sda | Visualizza i log degli errori |
📌 Sostituire /dev/sda con l’unità effettiva (ad esempio, /dev/nvme0n1 per le unità SSD NVMe).
sudo smartctl -H /dev/sda
Risultato atteso:
Risultato del test di autovalutazione della salute complessiva di SMART: PASSATO
Se il risultato è PASSATO, l’unità è attualmente sana.
Se il risultato è FALLITO, eseguire immediatamente il backup e pianificare la sostituzione.
ID | Attributo | Significato |
---|---|---|
5 | Conteggio settori riallocati | Settori danneggiati riallocati per riservare spazio |
197 | Conteggio settori in attesa corrente | Settori in attesa di rilettura |
198 | Conteggio non correggibile offline | Settori con errori di lettura/scrittura |
194 | Temperatura (Celsius) | Mantenere la temperatura al di sotto dei 50 °C per ottenere prestazioni ottimali |
Un valore crescente in questi campi = degrado dell’unità in corso.
Attività | Frequenza |
---|---|
-H controllo dello stato di salute | Settimanale |
Test breve (-t breve) | Settimanale |
Test lungo (-t long) | Mensile |
Esame del registro degli errori | Dopo crash o problemi di I/O |
Monitoraggio della temperatura | Costante (tramite script) |
Esempio: un rapporto settimanale via e-mail sullo stato di salute del disco
0 3 * * 1 smartctl -H /dev/sda | mail -s "SMART Health Report" you@example.com
📌 Assicurarsi che mailutils o sendmail siano installati.
smartctl è uno strumento leggero ma potente che nessun sysadmin dovrebbe trascurare. Con esso potete mantenere i vostri server sani, i vostri dati sicuri e la vostra infrastruttura proattiva.