Smartctl doesn't have correct info for WD Blue SSD

For my Western Digital Blue 1 Tb SSD’s the smartctl structure seems to be missing the correct template to display info. For example, the disks have been running for about a year but all show:

ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  5 Reallocated_Sector_Ct   0x0032   100   100   010    Old_age   Always       -       0
  9 Power_On_Hours          0x0032   100   100   000    Old_age   Always       -       74
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       17
165 Unknown_Attribute       0x0032   100   100   000    Old_age   Always       -       1310737
166 Unknown_Attribute       0x0032   100   100   000    Old_age   Always       -       0
167 Unknown_Attribute       0x0032   100   100   000    Old_age   Always       -       16
168 Unknown_Attribute       0x0032   100   100   000    Old_age   Always       -       1
169 Unknown_Attribute       0x0032   100   100   000    Old_age   Always       -       170
170 Unknown_Attribute       0x0032   100   100   000    Old_age   Always       -       0 

the “power on hours” should be more like 8k - 9k and the other info is not interpreted. I have updated to the current version of smartctl. Since I monitor these disks weekly it would be niice to have correct info. Any suggestions?

What is the exact smartctl command you are running?

This is what it looks like for me on Rocky 9:

[user@computer ~]$ sudo smartctl -a -d ata /dev/sdb

smartctl 7.2 2020-12-30 r5155 [x86_64-linux-5.14.0-362.24.1.el9_3.0.1.x86_64] (local build)
Copyright (C) 2002-20, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     WD Blue / Red / Green SSDs
Device Model:     WDC WDS100T2B0A
Serial Number:    <removed>
LU WWN Device Id: <removed>
Firmware Version: X61190WD
User Capacity:    1 000 204 886 016 bytes [1,00 TB]
Sector Size:      512 bytes logical/physical
Rotation Rate:    Solid State Device
Form Factor:      2.5 inches
TRIM Command:     Available, deterministic, zeroed
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ACS-4 T13/BSR INCITS 529 revision 5
SATA Version is:  SATA 3.3, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Mon Apr  8 18:31:59 2024 CEST
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: 		(    0) seconds.
Offline data collection
capabilities: 			 (0x11) SMART execute Offline immediate.
					No Auto Offline data collection support.
					Suspend Offline collection upon new
					command.
					No Offline surface scan supported.
					Self-test supported.
					No Conveyance Self-test supported.
					No 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: 	 (  10) minutes.

SMART Attributes Data Structure revision number: 4
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  5 Reallocated_Sector_Ct   0x0032   100   100   ---    Old_age   Always       -       0
  9 Power_On_Hours          0x0032   100   100   ---    Old_age   Always       -       29081
 12 Power_Cycle_Count       0x0032   100   100   ---    Old_age   Always       -       2569
165 Block_Erase_Count       0x0032   100   100   ---    Old_age   Always       -       116018250305
166 Minimum_PE_Cycles_TLC   0x0032   100   100   ---    Old_age   Always       -       1
167 Max_Bad_Blocks_per_Die  0x0032   100   100   ---    Old_age   Always       -       33
168 Maximum_PE_Cycles_TLC   0x0032   100   100   ---    Old_age   Always       -       40
169 Total_Bad_Blocks        0x0032   100   100   ---    Old_age   Always       -       593
170 Grown_Bad_Blocks        0x0032   100   100   ---    Old_age   Always       -       0
171 Program_Fail_Count      0x0032   100   100   ---    Old_age   Always       -       0
172 Erase_Fail_Count        0x0032   100   100   ---    Old_age   Always       -       0
173 Average_PE_Cycles_TLC   0x0032   100   100   ---    Old_age   Always       -       9
174 Unexpected_Power_Loss   0x0032   100   100   ---    Old_age   Always       -       65
184 End-to-End_Error        0x0032   100   100   ---    Old_age   Always       -       0
187 Reported_Uncorrect      0x0032   100   100   ---    Old_age   Always       -       0
188 Command_Timeout         0x0032   100   100   ---    Old_age   Always       -       0
194 Temperature_Celsius     0x0022   070   036   ---    Old_age   Always       -       30 (Min/Max 8/36)
199 UDMA_CRC_Error_Count    0x0032   100   100   ---    Old_age   Always       -       0
230 Media_Wearout_Indicator 0x0032   100   100   ---    Old_age   Always       -       0x010f005a010f
232 Available_Reservd_Space 0x0033   100   100   004    Pre-fail  Always       -       100
233 NAND_GB_Written_TLC     0x0032   100   100   ---    Old_age   Always       -       10232
234 NAND_GB_Written_SLC     0x0032   100   100   ---    Old_age   Always       -       14000
241 Host_Writes_GiB         0x0030   253   253   ---    Old_age   Offline      -       10891
242 Host_Reads_GiB          0x0030   253   253   ---    Old_age   Offline      -       6339
244 Temp_Throttle_Status    0x0032   000   100   ---    Old_age   Always       -       0

SMART Error Log Version: 1
No Errors Logged

SMART Self-test log structure revision number 1
No self-tests have been logged.  [To run self-tests, use: smartctl -t]

Selective Self-tests/Logging not supported

I just run a simple -a command and what I get is:

smartctl -a /dev/sda
smartctl 7.2 2020-12-30 r5155 [x86_64-linux-5.14.0-284.11.1.el9_2.x86_64] (local build)
Copyright (C) 2002-20, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Device Model:     WD Blue SA510 2.5 1000GB
Serial Number:    232138804165
LU WWN Device Id: 5 001b44 8b2dae0d2
Firmware Version: 52046100
User Capacity:    1,000,204,886,016 bytes [1.00 TB]
Sector Size:      512 bytes logical/physical
Rotation Rate:    Solid State Device
Form Factor:      2.5 inches
TRIM Command:     Available, deterministic
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   ACS-4, ACS-2 T13/2015-D revision 3
SATA Version is:  SATA 3.2, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Mon Apr  8 23:08:20 2024 EDT
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:                (    0) seconds.
Offline data collection
capabilities:                    (0x71) SMART execute Offline immediate.
                                        No Auto Offline data collection support.
                                        Suspend Offline collection upon new
                                        command.
                                        No 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:        (   1) minutes.
Extended self-test routine
recommended polling time:        (  10) minutes.
Conveyance self-test routine
recommended polling time:        (   1) minutes.

SMART Attributes Data Structure revision number: 0
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  5 Reallocated_Sector_Ct   0x0032   100   100   010    Old_age   Always       -       0
  9 Power_On_Hours          0x0032   100   100   000    Old_age   Always       -       75
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       17
165 Unknown_Attribute       0x0032   100   100   000    Old_age   Always       -       1310737
166 Unknown_Attribute       0x0032   100   100   000    Old_age   Always       -       0
167 Unknown_Attribute       0x0032   100   100   000    Old_age   Always       -       16
168 Unknown_Attribute       0x0032   100   100   000    Old_age   Always       -       1

I cut off the rest of the list because it is all “Unknown Attribute” to item #244. The test summary at the end of the report is:

SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Extended offline    Completed without error       00%        38         -
# 2  Extended offline    Completed without error       00%        32         -
# 3  Extended offline    Completed without error       00%         1         -

although obviously the “remaining lifetime” info is wrong which leads me not to trust any of the report.

What version of Rocky are you running? Just curious.
Also, note this particular line from your “smartctl -a” command:

So I think this is somewhat self-explanatory?
If your particular drive is not in the existing smartctl database then details likely will be incomplete and/or inaccurate.

How did you do this? Via dnf, or manually?
Either way, I’d recommend also updating the local smartctl database as well, if that wasn’t already done as part of the package/application update process.

LinuxGuy: I’m running Rocky 9.3 installed last summer and not updated completely since then. I did a dnf update on smartctl to try and bring in the most recent version and I expected that would include the appropriate database. I did notice that the WD disk was not in the database but how would I get a more recent version of it other than a dnf update on smartctl?

I decided to do a full update of Rocky (except fwupd-plugin-flashrom that isn’t available according to dnf and I have no idea what it does but that is already the subject of a request on this list). Anyhow, the result is that smartctl now has quite a few of the unknowns filled in but the power on time is only 75 hours on sda. Different for the others but still very low. One thing that occurred to me is that if the disk isn’t doing anything does it show as “power on” for an SSD or is it left in a standby state of some sort. This server is not very active from a data-read/write perspective and it could take a while to accrue 75 hours of actual busy time.

The drive database file drivedb.h can be updated separately with the following command:

sudo /usr/sbin/update-smart-drivedb

https://www.smartmontools.org/wiki/Download#Updatethedrivedatabase

thanks. Since everything is mostly what I would expect except for the ppower on time I think we can close this topic.