SMART Werte von NVMe SSDs auslesen

Aus Thomas-Krenn-Wiki
Zur Navigation springen Zur Suche springen

Das Kommando "smartctl" hat erst seit Version 6.5 einen experimentellen Support für NVMe SSDs. Eine solche Version steht mit Ubuntu 14.04, 16.04 sowie Debian Jessie noch nicht zur Verfügung. Für Debian Jessie ist es via "jessie-backports" erhältlich. Wenn man trotzdem Werte auslesen möchte, kann man statt "smartctl" alternativ das Tool "nvme" vom Paket NVMe-CLI verwenden.

Abfrage der SMART Werte mit 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

Abfrage der SMART Werte mit smartctl

Das Kommando "smartctl" unterstützt erst seit Version 6.5[1] das Auslesen der NVMe SSDs. Zusätzlich muss noch darauf geachtet werden, dass der Device Name ohne Namespace angegeben werden muss.

# 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

Einzelnachweise

  1. NVMe_Support (smartmontools.org)


Foto Christoph Mitasch.jpg

Autor: Christoph Mitasch

Christoph Mitasch arbeitet in der Abteilung Web Operations & Knowledge Transfer bei Thomas-Krenn. Er ist für die Betreuung und Weiterentwicklung der Webshop Infrastruktur zuständig. Seit einem Studienprojekt zum Thema Hochverfügbarkeit und Daten Replikation unter Linux beschäftigt er sich intensiv mit diesem Themenbereich. Nach einem Praktikum bei IBM Linz schloss er sein Diplomstudium „Computer- und Mediensicherheit“ an der FH Hagenberg ab. Er wohnt in der Nähe von Linz und ist neben der Arbeit ein begeisterter Marathon-Läufer und Jongleur, wo er mehrere Weltrekorde in der Team-Jonglage hält.


Das könnte Sie auch interessieren

Analyse einer fehlerhaften Festplatte mit smartctl
Not in smartctl database
Smartmontools Drive Database aktualisieren