Come controllare la salute del disco su Linux con smartctl
12 min di lettura - 18 maggio 2026

Utilizzate smartctl e smartd per monitorare la salute delle unità, eseguire test SMART e impostare avvisi automatici sui server Linux. Tags: smartctl, smartmontools, SMART, salute del disco, Linux, monitoraggio server, smartd, NVMe, SSD, HDD.
Come verificare lo stato di salute del disco su Linux con smartctl
smartctl è uno strumento a riga di comando per il monitoraggio dello stato di salute delle unità di archiviazione su Linux. Legge i dati S.M.A.R.T. (Self-Monitoring, Analysis, and Reporting Technology) da HDD, SSD e unità NVMe, monitorando metriche quali settori riallocati, temperatura e numero di errori. Se un'unità sta per guastarsi, smartctl ti fornisce segnali di avvertimento prima che tu perda i dati. Questa guida tratta l'installazione, l'esecuzione di controlli di integrità e autotest, la comprensione degli attributi SMART chiave e la configurazione del monitoraggio automatizzato con smartd.
L'installazione di smartmontools
smartctl fa parte del pacchetto smartmontools. Sono necessari i privilegi di root o sudo per installarlo e per eseguire la maggior parte dei smartctl comandi, poiché richiedono l'accesso diretto all'hardware.
| Distribuzione | Comando |
|---|---|
| Debian / Ubuntu / Linux Mint | sudo apt update && sudo apt install smartmontools -y |
| CentOS / RHEL / Rocky / Alma (8+) | sudo dnf install smartmontools -y |
| CentOS / RHEL 7 e versioni precedenti | sudo yum install smartmontools -y |
| Arch Linux / Manjaro | sudo pacman -S smartmontools |
| Fedora | sudo dnf install smartmontools |
Conferma l'installazione con smartctl --version.
Identificazione delle unità e abilitazione di SMART
Prima di poter controllare qualsiasi cosa, è necessario sapere quali unità sono presenti nel server e se supportano SMART.
Elencare tutti i dispositivi a blocchi:
lsblkCerca le unità compatibili con SMART:
sudo smartctl --scanQuesto restituisce nomi, tipi e protocolli dei dispositivi (ATA, SCSi, NVMe). Le unità SATA e SAS vengono visualizzate come /dev/sda, /dev/sdb, ecc. Le unità NVMe appaiono come /dev/nvme0n1, /dev/nvme1n1.
Verifica se SMART è disponibile e abilitato su un'unità specifica:
sudo smartctl -i /dev/sdaCerca "SMART support is: Available" e "SMART support is: Enabled" nell'output. Se è disponibile ma non abilitato, abilitalo:
sudo smartctl -s on /dev/sdaQuesta impostazione rimane attiva anche dopo il riavvio.
Per le unità collegate a controller RAID, utilizzare il -d flag per specificare il tipo di controller. Per MegaRAID: -d megaraid,N. Per HP Smart Array: -d cciss,N. Senza questo flag, smartctl non vedrà le singole unità fisiche.
Il monitoraggio SMART non è disponibile per i dischi virtuali in ambienti VPS o per la maggior parte delle unità flash USB. Il livello di virtualizzazione o l'involucro USB blocca l'accesso alla telemetria hardware.
Esecuzione di controlli di integrità e autotest
Un rapido controllo dello stato interroga il firmware dell'unità alla ricerca di guasti critici:
sudo smartctl -H /dev/sdaUn risultato PASSED significa che l'unità non ha superato la sua soglia di errore interna. Un risultato FAILED significa che l'unità è destinata a guastarsi a breve. Eseguire immediatamente il backup dei dati.
Per i dati SMART completi, inclusi tutti gli attributi e i registri degli errori:
sudo smartctl -a /dev/sdagli autotest
smartctl è possibile eseguire tre tipi di autotest, tutti in background mentre il sistema rimane operativo:
- Test breve (1-5 minuti): controlla i componenti elettrici e meccanici.
sudo smartctl -t short /dev/sda - Test lungo (ore): esegue la scansione di ogni settore dell'unità.
sudo smartctl -t long /dev/sda - Test di trasporto (~5 minuti): rileva i danni fisici causati dalla spedizione.
sudo smartctl -t conveyance /dev/sda
Verificare il tempo stimato di completamento prima di avviare un test lungo:
sudo smartctl -c /dev/sdaVisualizza i risultati del test:
sudo smartctl -l selftest /dev/sdaDovresti vedere "Completato senza errori". Se un test fallisce, l'output include LBA_of_first_error, che individua la posizione del danno sul disco.
Attributi SMART chiave da tenere d'occhio
Il controllo dello stato di salute (pass/fail) è utile ma limitato. Un'unità può riportare il risultato PASSED anche se i singoli attributi mostrano un andamento negativo. Questi sono quelli che contano di più:
- Numero di settori riallocati (ID 5): settori danneggiati che l'unità ha sostituito con quelli di riserva. Qualsiasi valore diverso da zero indica usura fisica. Un singolo settore riallocato su un'unità vecchia non è necessariamente urgente, ma un numero crescente è un chiaro segnale di allarme.
- Numero di settori attualmente in sospeso (ID 197): settori che l'unità non è riuscita a leggere o scrivere, in attesa di essere rimappati. Se questo numero continua a salire, l'unità si sta deteriorando.
- Non correggibile offline (ID 198): errori non correggibili rilevati durante le scansioni in background. Indica un danno alla superficie.
- Conteggio errori CRC UDMA (ID 199): errori di trasferimento dati. Questo di solito indica un cavo SATA difettoso o un connettore allentato, non un'unità guasta. Controlla prima i cavi.
Per le unità SSD e NVMe, controllare invece "Spazio libero disponibile" e "Percentuale utilizzata". Quando la "Percentuale utilizzata" si avvicina al 100%, l'unità ha raggiunto il limite di resistenza alla scrittura.
Anche la temperatura è importante. Gli HDD diventano inaffidabili oltre i 50 °C. Gli SSD possono tollerare più calore, ma dovrebbero rimanere al di sotto dei 70 °C. Visualizza tutti gli attributi specifici del produttore con smartctl -A /dev/sda, oppure controlla i recenti errori di comando con smartctl -l error /dev/sda.
Automazione del monitoraggio con smartd
Il controllo manuale delle unità va bene per una diagnostica una tantum. Per il monitoraggio continuo, usa smartd, il demone incluso in smartmontools. Per impostazione predefinita, esegue il polling delle unità ogni 30 minuti e registra le modifiche degli attributi su syslog.
Modifica il file di configurazione in /etc/smartd.conf (o /etc/smartmontools/smartd.conf su RHEL/CentOS). Anziché affidarsi a DEVICESCAN rilevamento automatico di tutto, elenca esplicitamente le tue unità. Questo evita blocchi dovuti a dispositivi incompatibili.
Esempio di configurazione:
/dev/sda -a -m [email protected] -s (S/../.././02|L/../../6/03) -W 4,45,55
/dev/sdb -a -m [email protected] -n standby,qCosa fanno i flag:
-a: monitora tutti gli attributi SMART-m: invia avvisi via e-mail in caso di errore-s: pianifica un test breve ogni giorno alle 2:00 e un test lungo ogni sabato alle 3:00-W 4,45,55: registra una variazione di temperatura di 4 °C, avvisa a 45 °C, invia un avviso critico a 55 °C-n standby,q: saltare il polling delle unità in modalità standby per evitare avviamenti non necessari
Per le unità collegate a controller RAID, specificare il tipo per ciascuna unità:
/dev/sda -d megaraid,0 -a -m [email protected]
/dev/sda -d megaraid,1 -a -m [email protected]Abilitare e avviare il servizio:
sudo systemctl enable --now smartdSu sistemi basati su Debian, rimuovere anche il commento start_smartd=yes in /etc/default/smartmontools.
Per testare gli avvisi via e-mail, aggiungere -M test a una riga di configurazione, riavviare smartd, quindi rimuoverlo. Ricaricare le modifiche alla configurazione senza riavviare il servizio con killall -HUP smartd.
Un breve test giornaliero richiede 1-2 minuti e rileva la maggior parte dei difetti superficiali. Un test settimanale approfondito copre ogni settore. In combinazione con gli avvisi via e-mail, questo fornisce un preallarme affidabile prima che un disco si guasti completamente.

Stanchi di implementazioni lente o di limiti di larghezza di banda? FDC Servers offre potenza dedicata istantanea, portata globale e piani flessibili costruiti per qualsiasi scala.
Aggiorna ora
Processi zombie in Linux: Trovare, rimuovere, prevenire
Imparate a identificare, rimuovere e prevenire i processi zombie in Linux. Comandi, correzioni di codice e suggerimenti per il monitoraggio per gli amministratori di server.
15 min di lettura - 19 maggio 2026
Lista di controllo per l'irrigidimento del server Linux
15 min di lettura - 8 maggio 2026

Avete domande o avete bisogno di una soluzione personalizzata?
Opzioni flessibili
Portata globale
Distribuzione immediata
Opzioni flessibili
Portata globale
Distribuzione immediata