Як виміряти загальну кількість записів, виконаних на SSD в Linux?


13

Я шукав в Інтернеті, щоб знайти інструмент / утиліту, яка може підказати мені загальну кількість записів, виконаних на SSD (або звичайний диск). Вихід повинен виглядати приблизно так:

SSD Intel 320S :- 
Total data written until now -- 2Tb
Total data read until now -- 4Tb
power on Hours -- 1234 Hrs
etc.

Але я її не знайшов. Хтось знає про такий інструмент?

Я знаю, що інструмент SSDLife в Windows робить це, але я спеціально прагну це зробити в Linux.


Я подивився на smartctlкоманду, smartmontoolsзапропоновану Селівановим. Його посада була дуже корисною. Я збираюся додати тут більше інформації, на яку я натрапив після копання в Інтернеті.

Я вважав, що gsmartcontrol(версія gui smartctrl) особливо корисна. Для отримання додаткової інформації про цей клас інструментів перегляньте Smartmontools - Документація Ubuntu Community . Це посилання містить приклади для smartctl.

Щоб зрозуміти, що означає кожен атрибут SMART, перевірте ці атрибути Intel SMART . Ці атрибути специфічні для SSD-дисків Intel, але, тим не менш, дають уявлення про те, який тип інформації SMART атрибути передають. Деякі конкретні параметри можуть відрізнятися між різними SSD-дисками. Чи розмір LBA є одним із них ?, я не знаю.

Ще одне чудове джерело інформації: Як визначити кількість циклів запису або очікуваний термін служби SSD під Linux? - Помилка сервера . Тут найкраща відповідь показує SMART Attribute Id 225стенди для загального вводу / виводу запису розміром 32 Мбіт, виконуваного на SSD до цих пір. Однак це стосується Intel X25-M. Інші SSD можуть використовувати інші атрибути SMART для передачі загальних даних, записаних на диск.

Тим більше, що Samsung 840 Pro (а може бути, навіть для інших Samsung SSD-дисків?) SMART Attribute Id 241 -- Total LBAs WrittenПередає цю інформацію. Моя здогадка щодо розміру LBA - 512 байт, але я не впевнений? Деякі експерименти, які я проводив, записуючи на SSD встановлений обсяг даних і вимірюючи значення цього атрибута, це означає, що це 512 байт.


48-розрядний LBA ATA-6 (представлений у 2003 році) дозволяє адресувати до 128 ПіБ дискових місць через 48-бітну адресу LBA. Обчислення 128*2^50 / 2^48виходу 512, що вказує на те, що адресація на рівні диска проводиться в 512-байтних фрагментах. (2 ^ 50/2 ^ 48 = 2 ^ (50-48) = 2 ^ 2, 128 * 2 ^ 2 = 512.)
CVn

Відповіді:


9

Ці значення містяться в атрибутах SMART . Ви використовуєте smartctlкоманду від smartmontools, щоб отримати їх.

UPD smartctl -A /dev/sda | grep -i 'media_wearout_indicator' | tr -s ' ' | cut -d' ' -f4-5 виведе VALUE, WORST та THRESHOLD для Media_Wearout_Indicator. Примітка: для вашого пристрою атрибут може мати різні назви та порогове значення, а може взагалі бути недоступним. Залежить від постачальника пристроїв.


2
Якщо номери доступні через SMART, я вважаю SMART трохи вдареним і пропущеним, і це залежить від пристрою. Інший варіант в Linux - це відслідковувати та записувати /proc/diskstats, хоча, очевидно, це скидається під час перезавантаження.
mr.spuratic

Ви не можете просто сказати, щоб використовувати "smartctl", не повідомивши нам аргументи!
Майкл

@Michael оновив відповідь
Селіванов Павло

4

Щоб бути трохи більш конкретним, ніж інші, ви можете отримати цю інформацію smartctlза допомогою -l devstatаргументів.

Вибірка зразка:

Device Statistics (GP Log 0x04)
Page Offset Size         Value  Description
  1  =====  =                =  == General Statistics (rev 1) ==
  1  0x008  4              288  Lifetime Power-On Resets
  1  0x018  6     348307315343  Logical Sectors Written
  1  0x020  6         34309409  Number of Write Commands
  1  0x028  6       3434309403  Logical Sectors Read
  1  0x030  6         34954859  Number of Read Commands
  4  =====  =                =  == General Errors Statistics (rev 1) ==
  4  0x008  4                0  Number of Reported Uncorrectable Errors
  4  0x010  4                0  Resets Between Cmd Acceptance and Completion
  5  =====  =                =  == Temperature Statistics (rev 1) ==
  5  0x008  1               13  Current Temperature
  5  0x010  1               16  Average Short Term Temperature
  5  0x018  1               25  Average Long Term Temperature
  5  0x020  1               34  Highest Temperature
  5  0x028  1               12  Lowest Temperature
  5  0x030  1               35  Highest Average Short Term Temperature
  5  0x038  1               16  Lowest Average Short Term Temperature
  5  0x040  1               26  Highest Average Long Term Temperature
  5  0x048  1               21  Lowest Average Long Term Temperature
  5  0x050  4                0  Time in Over-Temperature
  5  0x058  1               55  Specified Maximum Operating Temperature
  5  0x060  4                0  Time in Under-Temperature
  5  0x068  1                0  Specified Minimum Operating Temperature
  6  =====  =                =  == Transport Statistics (rev 1) ==
  6  0x008  4           224211  Number of Hardware Resets
  6  0x010  4              463  Number of ASR Events
  6  0x018  4                0  Number of Interface CRC Errors
  7  =====  =                =  == Solid State Device Statistics (rev 1) ==
  7  0x008  1                3  Percentage Used Endurance Indicator

Це говорить про те, що 855 Гб було записано на 256 ГБ SSD, який ніколи не був заповнений більше 15% ... хоча я гадаю, що це можливо здається ... надмірним ?
Майкл

@Michael Easy: кеш браузера; або, можливо, постачальник проводив тести на щойно виготовленому пристрої.
Селіванов Павло

3

Ви можете спробувати

# smartctl -a /dev/sda

smartctl -a /dev/sda
smartctl 5.41 2011-06-09 r3365 [x86_64-linux-3.2.0-49-generic] (local build)
Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net

=== START OF INFORMATION SECTION ===
Device Model: INTEL SSDSC2CW180A3
Serial Number: CVCV204408A6180EGN
LU WWN Device Id: 5 001517 bb2824682
Firmware Version: 400i
User Capacity: 180,045,766,656 bytes [180 GB]
Sector Size: 512 bytes logical/physical
Device is: Not in smartctl database [for details use: -P showall]
ATA Version is: 8
ATA Standard is: ACS-2 revision 3
Local Time is: Thu Jul 11 00:55:16 2013 PDT
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: (0×00) 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: ( 2097) seconds.
Offline data collection
capabilities: (0x7f) SMART execute Offline immediate.
Auto Offline data collection on/off support.
Abort Offline collection upon new
command.
Offline surface scan supported.
Self-test supported.
Conveyance Self-test supported.
Selective Self-test supported.
SMART capabilities: (0×0003) Saves SMART data before entering
power-saving mode.
Supports SMART auto save timer.
Error logging capability: (0×01) Error logging supported.
General Purpose Logging supported.
Short self-test routine
recommended polling time: ( 1) minutes.
Extended self-test routine
recommended polling time: ( 48) minutes.
Conveyance self-test routine
recommended polling time: ( 2) minutes.
SCT capabilities: (0×0021) SCT Status supported.
SCT Data Table supported.

SMART Attributes Data Structure revision number: 10
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
5 Reallocated_Sector_Ct 0×0032 100 100 000 Old_age Always – 0
9 Power_On_Hours 0×0032 000 000 000 Old_age Always – 46385647693103
12 Power_Cycle_Count 0×0032 100 100 000 Old_age Always – 279
170 Unknown_Attribute 0×0033 100 100 010 Pre-fail Always – 0
171 Unknown_Attribute 0×0032 100 100 000 Old_age Always – 0
172 Unknown_Attribute 0×0032 100 100 000 Old_age Always – 0
174 Unknown_Attribute 0×0032 100 100 000 Old_age Always – 278
184 End-to-End_Error 0×0033 100 100 090 Pre-fail Always – 0
187 Reported_Uncorrect 0×0032 100 100 000 Old_age Always – 0
192 Power-Off_Retract_Count 0×0032 100 100 000 Old_age Always – 278
225 Load_Cycle_Count 0×0032 100 100 000 Old_age Always – 10754
226 Load-in_Time 0×0032 100 100 000 Old_age Always – 65535
227 Torq-amp_Count 0×0032 100 100 000 Old_age Always – 66
228 Power-off_Retract_Count 0×0032 100 100 000 Old_age Always – 65535
232 Available_Reservd_Space 0×0033 100 100 010 Pre-fail Always – 0
233 Media_Wearout_Indicator 0×0032 100 100 000 Old_age Always – 0
241 Total_LBAs_Written 0×0032 100 100 000 Old_age Always – 10754
242 Total_LBAs_Read 0×0032 100 100 000 Old_age Always – 21803
249 Unknown_Attribute 0×0013 100 100 000 Pre-fail Always – 357

SMART Error Log not supported
SMART Self-test Log not supported
Note: selective self-test log revision number (0) not 1 implies that no selective self-test has ever been run
SMART Selective self-test log data structure revision number 0
Note: revision number not 1 implies that no selective self-test has ever been run
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 (0×0):
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.

http://namhuy.net/1024/how-to-check-ssd-life-left.html


Який рядок випуску у вашій вибірці дає TBW?
Майкл
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.