de SSD/HDD gezondheid te controleren in Linux

Als je een systeembeheerder bent en verantwoordelijk voor het beheer van Linux systemen in een Datacenter. Dan is het aan te raden om de gezondheid van de SSD en HDD schijven regelmatig te controleren. Het helpt je om defecte schijven op te sporen en ze kunnen vervangen worden voordat er gegevensverlies optreedt. S.M.A.R.T is een hulpmiddel dat gebruikt wordt om de gezondheidstoestand van SSD en HDD te controleren. Je kunt er ook on-demand tests mee uitvoeren op de schijf.

In dit bericht laten we je zien hoe je de gezondheid van SSD en HDD onder Linux kunt controleren.

Vereisten

  • Een server of desktop met Linux besturingssysteem.
  • Een root wachtwoord is op de server ingesteld.

Installeer Smartctl

Smartctl is standaard opgenomen in de standaard repository van alle grote Linux distributies.

Voor Debian en Ubuntu distributies installeer je Smartctl met het volgende commando:

apt-get install smartmontools -y

Voor RHEL, CentOS, en Fedora distributies, installeer Smartctl met het volgende commando:

dnf install smartmontools

Na de installatie van Smartctl start je de Smartctl dienst met het volgende commando:

systemctl start smartd

Je kunt de status van de smartd controleren met het volgende commando:

systemctl status smartd

Je zou de volgende uitvoer moeten krijgen:

? smartmontools.service - Self Monitoring and Reporting Technology (SMART) Daemon
     Loaded: loaded (/lib/systemd/system/smartmontools.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2021-07-02 08:58:33 UTC; 11s ago
       Docs: man:smartd(8)
             man:smartd.conf(5)
   Main PID: 1042 (smartd)
     Status: "Next check of 0 devices will start at 09:28:33"
      Tasks: 1 (limit: 2353)
     Memory: 1.2M
     CGroup: /system.slice/smartmontools.service
             ??1042 /usr/sbin/smartd -n

Jul 02 08:58:33 ubuntu2004 smartd[1042]: Device: /dev/sda, opened
Jul 02 08:58:33 ubuntu2004 smartd[1042]: Device: /dev/sda, [QEMU     QEMU HARDDISK    2.5+], 53.6 GB
Jul 02 08:58:33 ubuntu2004 smartd[1042]: Device: /dev/sda, IE (SMART) not enabled, skip device
Jul 02 08:58:33 ubuntu2004 smartd[1042]: Try 'smartctl -s on /dev/sda' to turn on SMART features
Jul 02 08:58:33 ubuntu2004 smartd[1042]: Device: /dev/sdb, opened
Jul 02 08:58:33 ubuntu2004 smartd[1042]: Device: /dev/sdb, [AN       Volume           2.5+], S/N: sdb, 53.6 GB
Jul 02 08:58:33 ubuntu2004 smartd[1042]: Device: /dev/sdb, IE (SMART) not enabled, skip device
Jul 02 08:58:33 ubuntu2004 smartd[1042]: Try 'smartctl -s on /dev/sdb' to turn on SMART features
Jul 02 08:58:33 ubuntu2004 smartd[1042]: Monitoring 0 ATA/SATA, 0 SCSI/SAS and 0 NVMe devices
Jul 02 08:58:33 ubuntu2004 systemd[1]: Started Self Monitoring and Reporting Technology (SMART) Daemon.

Test gezondheid van SSD/HDD

Na het installeren van Smartctl moet je de SMART functies op je harde schijf inschakelen.

Je kunt dat doen met het volgende commando:

smartctl -s on /dev/sda

Het eerste dat je zult moeten doen is informatie van SSD of HDD verkrijgen.

Je kunt het doen met het volgende commando:

smartctl -i /dev/sda

Dit geeft je de gedetailleerde informatie van je harde schijf.

smartctl 6.2 2013-07-26 r3841 [x86_64-linux-4.4.0-148-generic] (local build)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Device Model:     WDC WD5000LPVX-75V0TT0
Serial Number:    WXV1EC4KN2N7
LU WWN Device Id: 5 0014ee 65af65611
Firmware Version: 01.01A01
User Capacity:    500,107,862,016 bytes [500 GB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Rotation Rate:    5400 rpm
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   ACS-2 (minor revision not indicated)
SATA Version is:  SATA 3.0, 6.0 Gb/s (current: 3.0 Gb/s)
Local Time is:    Fri Jul  2 14:39:33 2021 IST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

Als je een korte test op de schijf wilt uitvoeren, voer dan het volgende commando uit:

smartctl -t short -a /dev/sda

Je zou de volgende uitvoer moeten krijgen:

smartctl 6.2 2013-07-26 r3841 [x86_64-linux-4.4.0-148-generic] (local build)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Device Model:     WDC WD5000LPVX-75V0TT0
Serial Number:    WXV1EC4KN2N7
LU WWN Device Id: 5 0014ee 65af65611
Firmware Version: 01.01A01
User Capacity:    500,107,862,016 bytes [500 GB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Rotation Rate:    5400 rpm
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   ACS-2 (minor revision not indicated)
SATA Version is:  SATA 3.0, 6.0 Gb/s (current: 3.0 Gb/s)
Local Time is:    Fri Jul  2 14:40:23 2021 IST
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:  (0x00)	Offline data collection activity
					was never started.
					Auto Offline Data Collection: Disabled.
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: 		( 9360) seconds.
Offline data collection
capabilities: 			 (0x7b) SMART execute Offline immediate.
					Auto Offline data collection on/off support.

De korte test test de Elektrische eigenschappen, Mechanische eigenschappen, en Lees/controleer.

Om het resultaat van de zelftest te vinden en af te drukken, voer je het volgende commando uit:

smartctl -l selftest /dev/sda

Je zou de volgende uitvoer moeten krijgen:

smartctl 6.2 2013-07-26 r3841 [x86_64-linux-4.4.0-148-generic] (local build)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

=== 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%      7609         -
# 2  Short offline       Interrupted (host reset)      90%      6972         -
# 3  Short offline       Aborted by host               70%      6972         -
# 4  Short offline       Interrupted (host reset)      70%         2         -

Om een lange test uit te voeren, gebruik je het volgende commando:

smartctl -t long -a /dev/sda

Je zou de volgende uitvoer moeten krijgen:

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.

=== START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION ===
Sending command: "Execute SMART Extended self-test routine immediately in off-line mode".
Drive command "Execute SMART Extended self-test routine immediately in off-line mode" successful.
Testing has begun.
Please wait 107 minutes for test to complete.
Test will complete after Fri Jul  2 16:30:41 2021

Use smartctl -X to abort test.
 

De lange test test alles wat bij de korte test is inbegrepen.

Je kunt de test stoppen, voer het volgende commando uit:

smartctl -X /dev/sda

Je zou de volgende uitvoer moeten zien:

smartctl 6.2 2013-07-26 r3841 [x86_64-linux-4.4.0-148-generic] (local build)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION ===
Sending command: "Abort SMART off-line mode self-test routine".
Self-testing aborted!

Om de algemene gezondheid van de schijf te testen, voer je het volgende commando uit:

smartctl -d ata -H /dev/sda

Je zou de volgende uitvoer moeten krijgen:

smartctl 6.2 2013-07-26 r3841 [x86_64-linux-4.4.0-148-generic] (local build)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

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

Om de geschatte tijd voor het uitvoeren van de test te controleren, voer je het volgende commando uit:

smartctl -c /dev/sda

Je zou de volgende uitvoer moeten krijgen:

smartctl 6.2 2013-07-26 r3841 [x86_64-linux-4.4.0-148-generic] (local build)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF READ SMART DATA SECTION ===
General SMART Values:
Offline data collection status:  (0x00)	Offline data collection activity
					was never started.
					Auto Offline Data Collection: Disabled.
Self-test execution status:      (  25)	The self-test routine was aborted by
					the host.
Total time to complete Offline 
data collection: 		( 9360) 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: 	 ( 107) minutes.
Conveyance self-test routine
recommended polling time: 	 (   5) minutes.
SCT capabilities: 	       (0x7035)	SCT Status supported.
					SCT Feature Control supported.
					SCT Data Table supported.

Om alleen het foutenlogboek af te drukken, voer je het volgende commando uit:

smartctl -l error /dev/sda

Om helpinformatie te krijgen, voer je het volgende commando uit:

smartctl --help

Conclusie

In de bovenstaande gids heb je geleerd hoe je het S.M.A.R.T gereedschap kunt installeren en gebruiken om de gezondheid van je SSH en HDD schijven te controleren. Ik hoop dat dit je veel zal helpen. Lees voor meer informatie de smartctl man pagina.