Cookie

Controllare la salute dei dischi con Linux

Pubblicato da TheJoe il

Tempo di lettura stimato: 5 minuti

Oggi cerchiamo di capire come controllare lo stato di salute di qualunque disco collegato a un sistema GNU/Linux usando sia il terminale, sia strumenti grafici.

Controllare di tanto in tanto la salute dei propri dischi è importante per ovviare alle possibili system failure, o peggio alla perdita di dati importanti. Ovviamente un disco in salute oggi non è detto che non si guasti domani, quindi è sempre bene eseguire regolarmente backup incrementali dei dati importanti e tenerne più di una copia.

Come vedremo in questo articolo controllare la salute del disco è un processo piuttosto semplice. Vediamo come si fa.

Smartctl

I dischi moderni (e con “moderni” intendo la maggior parte dei dischi sul mercato dal 2006 ad oggi) sono “S.M.A.R.T.”, acronimo di “Self-Monitoring, Analysis and Reporting Technology”: un sistema automatico di monitoraggio per dischi rotativi o allo stato solido per rilevare e fornire diversi indicatori di affidabilità, nella speranza di anticipare i malfunzionamenti. Smartctl legge questi dati ed esegue questi monitoraggi.

Installazione di smartmontools

Smartctl è un pacchetto inserito in una collezione di pacchetti sotto il nome di smartmontools. Per installarlo sarà necessario avviare il proprio gestore pacchetti e installare il pacchetto smartmontools.

Utilizzare smartctl

Smartctl è un software dall’utilizzo piuttosto intuitivo, benché sia un programma senza interfaccia grafica. Per prima cosa occorre avviarlo come amministratore del sistema, quindi sarà necessario loggarsi come root, o digitare nel terminale su - o sudo su ed ottenere tali diritti.

Controlliamo quanti e quali dischi siano fisicamente collegati al nostro sistema. Prestare attenzione che ad esempio /dev/sda indica un disco, mentre /dev/sda1 indica una partizione.

# lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda      8:0    0 465.8G  0 disk
├─sda1   8:1    0     2M  0 part
├─sda2   8:2    0    64M  0 part /boot/efi
├─sda3   8:3    0     2G  0 part [SWAP]
└─sda4   8:4    0 463.7G  0 part /mnt2/home
                                 /mnt2/ROOT
                                 /home
                                 /opt
                                 /tmp
                                 /root
                                 /boot/grub2/x86_64-efi
                                 /boot/grub2/i386-pc
                                 /var
                                 /srv
                                 /usr/local
                                 /.snapshots
                                 /
sdb      8:16   0 465.8G  0 disk
└─sdb1   8:17   0 465.8G  0 part
sdc      8:32   0 465.8G  0 disk
sdd      8:48   0   1.8T  0 disk
└─sdd1   8:49   0   1.8T  0 part
sde      8:64   0   3.6T  0 disk
└─sde1   8:65   0   3.6T  0 part /mnt3/joe/backup_OMV
                                 /mnt2/multimedia
                                 /mnt2/prova
                                 /mnt2/backup_OMV
                                 /mnt2/prova123
                                 /mnt2/7e4dea98-7ee6-4345-8ac7-9bc11fc820e8

Nel mio caso ho la seguente situazione:

  • un disco “sda” (di sistema) montato con 4 partizioni,
  • un disco “sdb” non montato con 1 partizione,
  • un disco “sdc” non montato apparentemente senza partizioni
  • un disco “sdd” non montato con 1 partizione,
  • un disco “sde” montato con 1 partizione.

Eseguiamo smartctl su uno dei dischi:

# smartctl -a /dev/sda
smartctl 7.2 2021-09-14 r5237 [x86_64-linux-5.14.21-150400.24.100-default] (SUSE RPM)
Copyright (C) 2002-20, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Western Digital Blue
Device Model:     WDC WD5000AAKX-00ERMA0
Serial Number:    WD-WMB3G1327290
LU WWN Device Id: 5 0014ee 2b231dd46
Firmware Version: 15.01H15
User Capacity:    500,107,862,016 bytes [500 GB]
Sector Size:      512 bytes logical/physical
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ATA8-ACS (minor revision not indicated)
SATA Version is:  SATA 3.0, 6.0 Gb/s (current: 3.0 Gb/s)
Local Time is:    Sun Feb 11 19:49:11 2024 CET
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

General SMART Values:
Offline data collection status:  (0x82) Offline data collection activity
                                        was completed without error.
                                        Auto Offline Data Collection: Enabled.
Self-test execution status:      (   0) The previous self-test routine completed
                                        without error or no self-test has ever
                                        been run.
Total time to complete Offline
data collection:                ( 8580) seconds.
Offline data collection
capabilities:                    (0x7b) SMART execute Offline immediate.
                                        Auto Offline data collection on/off support.
                                        Suspend Offline collection upon new
                                        command.
                                        Offline surface scan supported.
                                        Self-test supported.
                                        Conveyance Self-test supported.
                                        Selective Self-test supported.
SMART capabilities:            (0x0003) Saves SMART data before entering
                                        power-saving mode.
                                        Supports SMART auto save timer.
Error logging capability:        (0x01) Error logging supported.
                                        General Purpose Logging supported.
Short self-test routine
recommended polling time:        (   2) minutes.
Extended self-test routine
recommended polling time:        (  87) minutes.
Conveyance self-test routine
recommended polling time:        (   5) minutes.
SCT capabilities:              (0x3037) SCT Status supported.
                                        SCT Feature Control supported.
                                        SCT Data Table supported.

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       -       0
  3 Spin_Up_Time            0x0027   144   144   021    Pre-fail  Always       -       3766
  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       20
  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x002e   200   200   000    Old_age   Always       -       0
  9 Power_On_Hours          0x0032   097   097   000    Old_age   Always       -       2474
 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       -       20
192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       14
193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       5
194 Temperature_Celsius     0x0022   115   103   000    Old_age   Always       -       28
196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0
197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0
200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0

SMART Error Log Version: 1
No Errors Logged

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%      2458         -
# 2  Short offline       Completed without error       00%      2434         -
# 3  Short offline       Completed without error       00%      2410         -
# 4  Short offline       Completed without error       00%      2387         -
# 5  Short offline       Completed without error       00%      2363         -
# 6  Short offline       Completed without error       00%      2339         -
# 7  Short offline       Completed without error       00%      2315         -
# 8  Short offline       Completed without error       00%      2291         -
# 9  Extended offline    Completed without error       00%      2291         -
#10  Short offline       Completed without error       00%      2268         -
#11  Short offline       Completed without error       00%      2244         -
#12  Short offline       Completed without error       00%      2220         -
#13  Short offline       Completed without error       00%      2196         -
#14  Short offline       Completed without error       00%      2172         -
#15  Short offline       Completed without error       00%      2148         -
#16  Short offline       Completed without error       00%      2124         -
#17  Short offline       Completed without error       00%      2100         -
#18  Short offline       Completed without error       00%      2076         -
#19  Short offline       Completed without error       00%      2052         -
#20  Short offline       Completed without error       00%      2028         -
#21  Short offline       Completed without error       00%      2004         -

SMART Selective self-test log data structure revision number 1
 SPAN  MIN_LBA  MAX_LBA  CURRENT_TEST_STATUS
    1        0        0  Not_testing
    2        0        0  Not_testing
    3        0        0  Not_testing
    4        0        0  Not_testing
    5        0        0  Not_testing
Selective self-test flags (0x0):
  After scanning selected spans, do NOT read-scan remainder of disk.
If Selective self-test is pending on power-up, resume after 0 minute delay.

L’output sarà molto lungo e completo. In caso di dubbi suggerisco di controllare voce per voce i valori confrontandoli con i riferimenti ufficiali indicati ad esempio su Wikipedia. I dati possono essere esportati in un file testuale con il seguente comando:

# smartctl -a /dev/sda >> /home/username/Documenti/drive-report.txt

Gnome disks

Altro approccio è quello utilizzato dal software gnome disks, in cui non sarà necessario l’utilizzo del terminale. Per utilizzarlo sarà necessario installare il pacchetto gnome-disk-utility con il gestore pacchetti della propria distribuzione. Chi usa Gnome probabilmente lo avrà già installato. Per avviarlo basterà scrivere nella dashboard (o cercare fra le applicazioni) “disks“.

Guarda qui:  Il backup semplice con "Déjà Dup"

Salute del disco – gnome disks

Lanciamo l’utility Gnome Disk dalla nostra dashboard e quando si avvia selezionerà in automatico il primo disco connesso al computer.

Selezioniamo il disco che vogliamo controllare e andiamo a cliccare i tre pallini in colonna nella barra del titolo accanto ai pulsanti di chiusura sulla destra. Poi clicchiamo su “SMART Data & Self-Tests…” (un posto non proprio felicissimo, ma ci accontentiamo). Oppure selezioniamo il disco e premiamo Ctrl + S sulla tastiera.

Per eseguire un “Self-test” basterà cliccare il tasto in basso a sinistra e analizzare il risultato al completamento.


TheJoe

Mantengo questo blog a livello amatoriale dal 2009. Sono appassionato di grafica, tecnologia, software Open Source. Fra i miei articoli non sarà difficile trovarne circa la musica, ed alcuni di riflessioni personali, ma preferisco indirizzare la linea del blog principalmente verso la tecnologia. Per informazioni contattami.

0 commenti

Lascia un commento

Segnaposto per l'avatar

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.