Odczyt wartośći SMART z dysku SSD NVMe

Z Thomas-Krenn-Wiki
Przejdź do nawigacji Przejdź do wyszukiwania

Komenda "smartctl" oferuje dopiero od wersji 6.5 eksperymentalne wsparcie dla dysków SSD typu NVMe. Ta wersja nie jest jeszcze oficjalnie dostępna w Ubuntu 14.04, 16.04 jaki i w Debianie Jessie. W Debianie Jessie jest ona dostępna przez tak zwane "jessie-backports". Pomimo tego wartości SMART mogą zostać odczytane za pośrednictwem narzędzia "nvme" z pakietu "nvme-cli", zamiast z "smartctl".

Odczyt wartości SMART z nvme-cli

# apt-get install nvme-cli

# nvme list
Node             SN                   Model                                    Namespace Usage                      Format           FW Rev
---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- --------
/dev/nvme0n1     XXXXXXXXXXXXXXXXXX   INTEL SSDPEDMD400G4                      1         400.09  GB / 400.09  GB    512   B +  0 B   XXXXXXXX

# nvme --smart-log /dev/nvme0n1 
Smart Log for NVME device:nvme0n1 namespace-id:ffffffff
critical_warning                    : 0
temperature                         : 29 C
available_spare                     : 100%
available_spare_threshold           : 10%
percentage_used                     : 1%
data_units_read                     : 380,891,708
data_units_written                  : 285,976,030
host_read_commands                  : 17,185,256,995
host_write_commands                 : 11,740,522,779
controller_busy_time                : 0
power_cycles                        : 158
power_on_hours                      : 3,026
unsafe_shutdowns                    : 0
media_errors                        : 0
num_err_log_entries                 : 0
Warning Temperature Time            : 0
Critical Composite Temperature Time : 0
Temperature Sensor 1                : 0 C
Temperature Sensor 2                : 0 C
Temperature Sensor 3                : 0 C
Temperature Sensor 4                : 0 C
Temperature Sensor 5                : 0 C
Temperature Sensor 6                : 0 C
Temperature Sensor 7                : 0 C
Temperature Sensor 8                : 0 C

# nvme --smart-log-add /dev/nvme0n1 
Additional Smart Log for NVME device:nvme0n1 namespace-id:ffffffff
key                               normalized raw
program_fail_count              : 100%       0
erase_fail_count                : 100%       0
wear_leveling                   :  99%       min: 347, max: 395, avg: 370
end_to_end_error_detection_count: 100%       0
crc_error_count                 : 100%       0
timed_workload_media_wear       : 100%       63.999%
timed_workload_host_reads       : 100%       65535%
timed_workload_timer            : 100%       65535 min
thermal_throttle_status         : 100%       0%, cnt: 0
retry_buffer_overflow_count     : 100%       0
pll_lock_loss_count             : 100%       1
nand_bytes_written              : 100%       sectors: 6312528
host_bytes_written              : 100%       sectors: 4363647

Odczyt wartości SMART z smartctl

Komenda "smartctl" dopiero od wersji 6.5[1] umożliwia odczyt wartości SMART z dysków SSD typu NVMe. Ponadto należy pamiętać, że nazwa urządzenia musi zostać podana bez przestrzeni nazw (namespace).

# apt-get install smartmontools

# smartctl -a /dev/nvme0
smartctl 6.6 2016-05-31 r4324 [x86_64-linux-4.4.0-98-generic] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Number:                       INTEL SSDPEDMD400G4
Serial Number:                      XXXXXXXXXXXXXXXXXX
Firmware Version:                   XXXXXXXXX
PCI Vendor/Subsystem ID:            0x8086
IEEE OUI Identifier:                0x5cd2e4
Controller ID:                      0
Number of Namespaces:               1
Namespace 1 Size/Capacity:          400,088,457,216 [400 GB]
Namespace 1 Formatted LBA Size:     512
Local Time is:                      Wed Nov 22 12:56:42 2017 CET
Firmware Updates (0x02):            1 Slot
Optional Admin Commands (0x0006):   Format Frmw_DL
Optional NVM Commands (0x0006):     Wr_Unc DS_Mngmt
Maximum Data Transfer Size:         32 Pages

Supported Power States
St Op     Max   Active     Idle   RL RT WL WT  Ent_Lat  Ex_Lat
 0 +    25.00W       -        -    0  0  0  0        0       0

Supported LBA Sizes (NSID 0x1)
Id Fmt  Data  Metadt  Rel_Perf
 0 +     512       0         2
 1 -     512       8         2
 2 -     512      16         2
 3 -    4096       0         0
 4 -    4096       8         0
 5 -    4096      64         0
 6 -    4096     128         0

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

SMART/Health Information (NVMe Log 0x02, NSID 0xffffffff)
Critical Warning:                   0x00
Temperature:                        29 Celsius
Available Spare:                    100%
Available Spare Threshold:          10%
Percentage Used:                    1%
Data Units Read:                    380,891,746 [195 TB]
Data Units Written:                 285,976,046 [146 TB]
Host Read Commands:                 17,185,258,529
Host Write Commands:                11,740,524,085
Controller Busy Time:               0
Power Cycles:                       158
Power On Hours:                     3,026
Unsafe Shutdowns:                   0
Media and Data Integrity Errors:    0
Error Information Log Entries:      0

Error Information (NVMe Log 0x01, max 64 entries)
No Errors Logged


# smartctl -l error /dev/nvme0
smartctl 6.6 2016-05-31 r4324 [x86_64-linux-4.4.0-98-generic] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF SMART DATA SECTION ===
Error Information (NVMe Log 0x01, max 64 entries)
No Errors Logged


# smartctl -H /dev/nvme0
smartctl 6.6 2016-05-31 r4324 [x86_64-linux-4.4.0-98-generic] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org

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

Odnośniki

  1. NVMe_Support (smartmontools.org)

Autor: Christoph Mitasch

Powiązane artykuły

Aktualizacja oprogramowania Intel Data Center Manager
Analiza wydajności w Linuksie programem kSar
Test wydajności I/O programem dd w Linuksie