Чи є команда Terminal, яка покаже мені, скільки ГБ було записано на мій SSD протягом усього терміну служби диска? Я запитую, бо хочу дізнатися, скільки циклів зроблено. SSD здатні робити близько 1000-2000 циклів залежно від типу.
Чи є команда Terminal, яка покаже мені, скільки ГБ було записано на мій SSD протягом усього терміну служби диска? Я запитую, бо хочу дізнатися, скільки циклів зроблено. SSD здатні робити близько 1000-2000 циклів залежно від типу.
Відповіді:
Прочитайте наступні атрибути SMART вашого SSD за допомогою відповідного інструменту *:
241 - Загальна кількість записаних LBA: Загальна кількість 512-байтових секторів, записаних протягом усього терміну експлуатації пристрою.
242 - Загальна кількість прочитаних LBA: Загальна кількість прочитаних 512-байтних секторів протягом усього терміну експлуатації пристрою.
Другий набір атрибутів:
174 - Host_Reads_MiB
175 - Host_Writes_MiB
Але я не знаю, чи насправді значення, знайдені у другому наборі, мають сенс (принаймні, для мене з 120 ГБ SSD як однієї з частин накопичувача Fusion), оскільки на SSD записано значно більше даних, ніж на жорсткому диску, хоча на SSD має лише 1/25 розміру:
0xae Host_Reads_MiB ----CK 100 100 000 - 12268569 (~12 TiB)
0xaf Host_Writes_MiB ----CK 100 100 000 - 16481745 (~16 TiB)
порівняно з 3 ТБ HDD (друга частина накопичувача Fusion):
0xf1 Total_LBAs_Written ------ 100 253 000 - 21361815408 (~10 TiB)
0xf2 Total_LBAs_Read ------ 100 253 000 - 23925221693 (~11 TiB)
Після встановлення smartmontools наступні команди надають записані дані в ГБ, якщо атрибут "242 Total_LBAs_Written" існує:
smartctl -s on -i -A -f brief -f hex,id -l devstat /dev/DiskIdentifier | grep 0xf1 | awk '{ print $8/1953125 }'
або в туберкульозі:
smartctl -s on -i -A -f brief -f hex,id -l devstat /dev/DiskIdentifier | grep 0xf1 | awk '{ print $8/1953125000 }'
Замініть "DiskIdentifier" на ідентифікатор вашого внутрішнього SSD, знайденого в diskutil list. Напевно, це диск0.
Наступна команда дає записані дані в ГБ, якщо атрибут "175 - Host_Writes_MiB" існує (обробляйте результат обережно):
smartctl -s on -i -A -f brief -f hex,id -l devstat /dev/DiskIdentifier | grep 0xaf | awk '{ print $8/953.67 }'
Як уже згадувалося раніше, замініть "DiskIdentifier" на ідентифікатор вашого внутрішнього SSD, знайдений на diskutil list. Напевно, це диск0.
Команди smartctl вище не дуже надійні (принаймні, для мене).
Якщо ви отримали помилку типу "Читання даних SMART не вдалося: Невизначена помилка: 0", спробуйте smartctl -A /dev/disk0спочатку.
Якщо ви отримаєте помилку типу "SMART Disabled. Використовуйте параметр -s з аргументом" on ", щоб увімкнути це.", Спробуйте. smartctl -s on -A /dev/disk0
Потім повторіть вищезгадані команди для зчитування та обчислення даних, записаних на диск.
smartctl -s on /dev/DiskIdentifier. Тоді ви зможете отримати дані. Щоб знову відключити це:smartctl -s off /dev/DiskIdentifier
smartctl його можна легко встановити за допомогою homebrew або порта і що для нього навіть є графічний інтерфейс .
В оригінальному дописі зазначається, що на SSD-дисках обмежується цикл 1000-2000, що надто спрощує проблему. Окремі комірки на SSD можуть мати таку межу, але SSD реалізує багато різних рішень: від надмірного забезпечення та вирівнювання запису до фірмового збору Sandforce збору дублювання, стиснення та методів розрізнення даних, який він називає "DuraWrite".
Назад до оригінальної публікації: такі методи, як iostat, хоча це актуально, демонструють сукупну активність, але дуже важко працювати назад, щоб знати, скільки циклів програми / стирання було виконано для кожної комірки, а звідти, скільки життя залишається на SSD.
Корисною рекомендацією може бути уникнення заповнення SSD в межах 20% або більше від заявленої ємності та уникнення розгортання використовуваних SSD без відповідної резервної копії.
У Ars Technica є кілька дійсно корисних статей про роботу SSD-дисків. Найбільш прямо корисне це: " SSD-диски споживчих класів фактично тривають пекло довго ". Детальніше див. Тут , зокрема на сторінці 5.
Я встановив GSmartControl з Homebrew ( brew install gsmartcontrol), і отримав це:
Атрибут SMART немає. 173 (кількість стирань або вирівнювання зносу) повинно означати використане загальне записування сектора.
Мій MacBook 2015 відповів на це (не 0xf1 ID):
smartctl -s on -i -A -f brief -f hex,id -l devstat /dev/disk0
smartctl 6.4 2015-06-04 r4109 [x86_64-apple-darwin15.0.0] (local build)
Copyright (C) 2002-15, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF INFORMATION SECTION ===
Device Model: APPLE SSD SM0256G
...
LU WWN Device Id: 5 002538 900000000
Firmware Version: BXW1SA0Q
User Capacity: 251 000 193 024 bytes [251 GB]
Sector Sizes: 512 bytes logical, 4096 bytes physical
Rotation Rate: Solid State Device
Device is: Not in smartctl database [for details use: -P showall]
ATA Version is: ATA8-ACS T13/1699-D revision 4c
SATA Version is: SATA 3.0, 6.0 Gb/s (current: 6.0 Gb/s)
...
SMART support is: Available - device has SMART capability.
SMART support is: Enabled
=== START OF ENABLE/DISABLE COMMANDS SECTION ===
SMART Enabled.
=== START OF READ SMART DATA SECTION ===
SMART Attributes Data Structure revision number: 1
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAGS VALUE WORST THRESH FAIL RAW_VALUE
0x01 Raw_Read_Error_Rate -O-RC- 200 200 000 - 0
0x05 Reallocated_Sector_Ct PO--CK 100 100 000 - 0
0x09 Power_On_Hours -O--CK 099 099 000 - 180
0x0c Power_Cycle_Count -O--CK 099 099 000 - 650
0xa9 Unknown_Attribute PO--C- 229 229 010 - 1975773037504
0xad Unknown_Attribute -O--CK 200 200 100 - 4296081414
0xae Unknown_Attribute -O---K 099 099 000 - 2547718
0xaf Program_Fail_Count_Chip -O---K 099 099 000 - 1304888
0xc0 Power-Off_Retract_Count -O--C- 099 099 000 - 1
0xc2 Temperature_Celsius -O---K 059 022 000 - 41 (Min/Max 19/78)
0xc5 Current_Pending_Sector -O---K 100 100 000 - 0
0xc7 UDMA_CRC_Error_Count -O-RC- 200 199 000 - 0
||||||_ K auto-keep
|||||__ C event count
||||___ R error rate
|||____ S speed/performance
||_____ O updated online
|______ P prefailure warning
ATA_READ_LOG_EXT (addr=0x00:0x00, page=0, n=1) failed: 48-bit ATA commands not implemented
Read GP Log Directory failed
Device Statistics (GP/SMART Log 0x04) not supported
Дуже докладний відповідь була дана в цьому питанні тут
Наступна команда
іостат -Id диск0
відображає статистику передачі даних з моменту встановлення пристрою до моменту запуску команди iostat.