0 Голосов
Редактировал(а) Сергей Коршунов 2022/09/19 19:26

Последние авторы
1 = Проверка SMART информации HDD/SSD на Linux =
2
3 [[image:https://obu4alka.ru/wp-content/uploads/2019/08/hdd-ssd-e1641718037997.jpeg||alt="HDD-SSD-logo" height="234" width="400"]]
4
5
6 Сегодня поговорим о том, как можно проверить SMART информацию HDD/SSD дисков на Linux системах. Проверять будем утилитой **smartmontools**.
7
8 **Содержание**
9
10 ~1. Тестирование HDD/SSD дисков
11
12 2. Журналы ошибок диска
13
14 3. Примеры SMART информации
15
16 4. Проверка работоспособности SSD/HDD дисков с помощью Gnome Disks
17
18 Проверка HDD/SSD дисков
19
20 {{{sudo smartctl -d ata -H /dev/sda}}}
21
22 * **d** – Указывает тип устройства.
23 * **ata** – тип устройства **ATA**, используйте **scsi** для типа устройства SCSI.
24 * **H** – Проверяет устройство, чтобы сообщить о его состоянии и работоспособности.
25
26 У меня вывод был следующий:
27
28 {{{=== START OF READ SMART DATA SECTION ===
29 SMART overall-health self-assessment test result: PASSED}}}
30
31 По данному выводу можно сказать, что диск **в порядке**.
32
33 == Тестирование HDD/SSD дисков ==
34
35 Теперь давайте протестируем диск. Чтобы инициировать короткий тест (short), выполните следующую команду::
36
37 {{{sudo smartctl -t short /dev/sda}}}
38
39 Получим вывод о том, что тест будет продолжаться 2 минуты.
40
41 {{{=== START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION ===
42 Sending command: "Execute SMART Short self-test routine immediately in off-line mode".
43 Drive command "Execute SMART Short self-test routine immediately in off-line mode" successful.
44 Testing has begun.
45 Please wait 2 minutes for test to complete.
46 Test will complete after Sun Jan 9 12:15:34 2022 +04
47 Use smartctl -X to abort test.}}}
48
49 Запустим **selftest** команду, отчет о проверки диска, с отсрочкой на две минуты:
50
51 {{{sudo sh -c 'sleep 120 && smartctl -l selftest /dev/sda'}}}
52
53 Мой вывод был следующий
54
55 {{{=== START OF READ SMART DATA SECTION ===
56 SMART Self-test log structure revision number 1
57 Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error
58 # 1 Short offline Completed without error 00% 11815}}}
59
60 Прогоним тесты ещё раз. В конце получаю вот такой результат:
61
62 {{{=== START OF READ SMART DATA SECTION ===
63 SMART Self-test log structure revision number 1
64 Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error
65 # 1 Short offline Completed without error 00% 11815 -
66 # 2 Short offline Completed without error 00% 11815}}}
67
68 Тесты совпадают, значит с диском все в порядке. Если у вас будут разные результаты, то советую такой диск поменять.
69
70 Чтобы инициировать расширенный тест (long), выполните следующую команду:
71
72 {{{sudo smartctl -t long /dev/sda}}}
73
74 Получим вывод о том, что тест будет продолжаться 30 минут.
75
76 Запустим **selftest** команду, отчет о проверки диска, с отсрочкой на 30 минут:
77
78 {{{sudo sh -c 'sleep 1800 && smartctl -l selftest /dev/sda'}}}
79
80 Получим следующий вывод:
81
82 {{{=== START OF READ SMART DATA SECTION ===
83 SMART Self-test log structure revision number 1
84 Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error
85 # 1 Extended offline Completed without error 00% 11816 -
86 # 2 Short offline Completed without error 00% 11815 -
87 # 3 Short offline Completed without error 00% 11815 -}}}
88
89 Тесты совпадают, значит с диском все в порядке.
90
91 == Журналы ошибок диска ==
92
93 Вы можете распечатать журналы ошибок диска с помощью команды:
94
95 {{{sudo smartctl -l error /dev/sda}}}
96
97 {{{=== START OF READ SMART DATA SECTION ===
98 SMART Error Log Version: 1
99 No Errors Logge}}}
100
101 На диске /dev/sda ошибок нет.
102
103 Приведу пример с диска с ошибками:
104
105 {{{=== START OF READ SMART DATA SECTION ===
106 SMART Error Log Version: 1
107 ATA Error Count: 41 (device log contains only the most recent five errors)
108 CR = Command Register [HEX]
109 FR = Features Register [HEX]
110 SC = Sector Count Register [HEX]
111 SN = Sector Number Register [HEX]
112 CL = Cylinder Low Register [HEX]
113 CH = Cylinder High Register [HEX]
114 DH = Device/Head Register [HEX]
115 DC = Device Command Register [HEX]
116 ER = Error register [HEX]
117 ST = Status register [HEX]
118 Powered_Up_Time is measured from power on, and printed as
119 DDd+hh:mm:SS.sss where DD=days, hh=hours, mm=minutes,
120 SS=sec, and sss=millisec. It "wraps" after 49.710 days.
121
122 Error 41 occurred at disk power-on lifetime: 5420 hours (225 days + 20 hours)
123 When the command that caused the error occurred, the device was active or idle.
124
125 After command completion occurred, registers were:
126 ER ST SC SN CL CH DH
127 -- -- -- -- -- -- --
128 40 51 40 30 c5 33 e4 Error: UNC 64 sectors at LBA = 0x0433c530 = 70501680
129
130 Commands leading to the command that caused the error were:
131 CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name
132 -- -- -- -- -- -- -- -- ---------------- --------------------
133 c8 00 40 30 c5 33 e4 08 00:40:53.424 READ DMA
134 ef 10 02 00 00 00 a0 08 00:40:53.423 SET FEATURES [Enable SATA feature]
135 ec 00 00 00 00 00 a0 08 00:40:53.422 IDENTIFY DEVICE
136 ef 03 46 00 00 00 a0 08 00:40:53.422 SET FEATURES [Set transfer mode]
137
138 Error 40 occurred at disk power-on lifetime: 5420 hours (225 days + 20 hours)
139 When the command that caused the error occurred, the device was active or idle.
140
141 After command completion occurred, registers were:
142 ER ST SC SN CL CH DH
143 -- -- -- -- -- -- --
144 40 51 40 30 c5 33 e4 Error: UNC 64 sectors at LBA = 0x0433c530 = 70501680
145
146 Commands leading to the command that caused the error were:
147 CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name
148 -- -- -- -- -- -- -- -- ---------------- --------------------
149 c8 00 40 30 c5 33 e4 08 00:40:51.701 READ DMA
150 ef 10 02 00 00 00 a0 08 00:40:51.701 SET FEATURES [Enable SATA feature]
151 ec 00 00 00 00 00 a0 08 00:40:51.699 IDENTIFY DEVICE
152 ef 03 46 00 00 00 a0 08 00:40:51.699 SET FEATURES [Set transfer mode]
153
154 Error 39 occurred at disk power-on lifetime: 5420 hours (225 days + 20 hours)
155 When the command that caused the error occurred, the device was active or idle.
156
157 After command completion occurred, registers were:
158 ER ST SC SN CL CH DH
159 -- -- -- -- -- -- --
160 40 51 40 30 c5 33 e4 Error: UNC 64 sectors at LBA = 0x0433c530 = 70501680
161
162 Commands leading to the command that caused the error were:
163 CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name
164 -- -- -- -- -- -- -- -- ---------------- --------------------
165 c8 00 40 30 c5 33 e4 08 00:40:49.977 READ DMA
166 ef 10 02 00 00 00 a0 08 00:40:49.977 SET FEATURES [Enable SATA feature]
167 ec 00 00 00 00 00 a0 08 00:40:49.976 IDENTIFY DEVICE
168 ef 03 46 00 00 00 a0 08 00:40:49.976 SET FEATURES [Set transfer mode]
169
170 Error 38 occurred at disk power-on lifetime: 5420 hours (225 days + 20 hours)
171 When the command that caused the error occurred, the device was active or idle.
172
173 After command completion occurred, registers were:
174 ER ST SC SN CL CH DH
175 -- -- -- -- -- -- --
176 40 51 40 30 c5 33 e4 Error: UNC 64 sectors at LBA = 0x0433c530 = 70501680
177
178 Commands leading to the command that caused the error were:
179 CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name
180 -- -- -- -- -- -- -- -- ---------------- --------------------
181 c8 00 40 30 c5 33 e4 08 00:40:48.254 READ DMA
182 ef 10 02 00 00 00 a0 08 00:40:48.254 SET FEATURES [Enable SATA feature]
183 ec 00 00 00 00 00 a0 08 00:40:48.253 IDENTIFY DEVICE
184 ef 03 46 00 00 00 a0 08 00:40:48.253 SET FEATURES [Set transfer mode]
185
186 Error 37 occurred at disk power-on lifetime: 5420 hours (225 days + 20 hours)
187 When the command that caused the error occurred, the device was active or idle.
188
189 After command completion occurred, registers were:
190 ER ST SC SN CL CH DH
191 -- -- -- -- -- -- --
192 40 51 40 30 c5 33 e4 Error: UNC 64 sectors at LBA = 0x0433c530 = 70501680
193
194 Commands leading to the command that caused the error were:
195 CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name
196 -- -- -- -- -- -- -- -- ---------------- --------------------
197 c8 00 40 30 c5 33 e4 08 00:40:46.531 READ DMA
198 ef 10 02 00 00 00 a0 08 00:40:46.530 SET FEATURES [Enable SATA feature]
199 ec 00 00 00 00 00 a0 08 00:40:46.529 IDENTIFY DEVICE
200 ef 03 46 00 00 00 a0 08 00:40:46.529 SET FEATURES [Set transfer mode]
201 }}}
202
203 == Примеры SMART информации ==
204
205 Выведем полный список SMART информации нашего HDD/SSD. В данном случае тестирую SSD.
206
207 {{{sudo smartctl -a /dev/sda}}}
208
209 {{{ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
210 1 Raw_Read_Error_Rate 0x0032 100 100 000 Old_age Always - 405
211 9 Power_On_Hours 0x0032 100 100 000 Old_age Always - 11816
212 12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 107
213 148 Unknown_Attribute 0x0000 100 100 000 Old_age Offline - 0
214 149 Unknown_Attribute 0x0000 100 100 000 Old_age Offline - 0
215 167 Write_Protect_Mode 0x0000 100 100 000 Old_age Offline - 0
216 168 SATA_Phy_Error_Count 0x0012 100 100 000 Old_age Always - 0
217 169 Bad_Block_Rate 0x0000 100 100 000 Old_age Offline - 35
218 170 Bad_Blk_Ct_Erl/Lat 0x0000 100 100 010 Old_age Offline - 0/24
219 172 Erase_Fail_Count 0x0032 100 100 000 Old_age Always - 0
220 173 MaxAvgErase_Ct 0x0000 100 100 000 Old_age Offline - 180 (Average 160)
221 181 Program_Fail_Count 0x0032 100 100 000 Old_age Always - 0
222 182 Erase_Fail_Count 0x0000 100 100 000 Old_age Offline - 0
223 187 Reported_Uncorrect 0x0032 100 100 000 Old_age Always - 0
224 192 Unsafe_Shutdown_Count 0x0012 100 100 000 Old_age Always - 102
225 194 Temperature_Celsius 0x0022 026 038 000 Old_age Always - 26 (Min/Max 11/38)
226 196 Reallocated_Event_Count 0x0032 100 100 000 Old_age Always - 0
227 199 SATA_CRC_Error_Count 0x0032 100 100 000 Old_age Always - 0
228 218 CRC_Error_Count 0x0032 100 100 000 Old_age Always - 0
229 231 SSD_Life_Left 0x0000 084 084 000 Old_age Offline - 84
230 233 Flash_Writes_GiB 0x0032 100 100 000 Old_age Always - 11909
231 241 Lifetime_Writes_GiB 0x0032 100 100 000 Old_age Always - 4604
232 242 Lifetime_Reads_GiB 0x0032 100 100 000 Old_age Always - 3754
233 244 Average_Erase_Count 0x0000 100 100 000 Old_age Offline - 160
234 245 Max_Erase_Count 0x0000 100 100 000 Old_age Offline - 180
235 246 Total_Erase_Count 0x0000 100 100 000 Old_age Offline - 598192}}}
236
237 * **Reallocated Sectors Count** — Количество секторов, перераспределенных из-за ошибок чтения.
238 * **Power_On_Hours** — Фактически отработанное время в часах.
239 * **Power_Cycle_Count** — Цикл включения.выключения
240 * **Reported Uncorrect** — Количество неисправимых ошибок при доступе к сектору чтения/записи.
241 * **Reallocated_Error_Count** — Текущее состояние перемещения поврежденных секторов в специальную рабочую область.
242
243 == Проверка работоспособности SSD/HDD дисков с помощью Gnome Disks ==
244
245 С помощью утилиты **GNOME disks** можно получить информацию о дисках, отформатировать диски, создать образ диска, выполнить стандартные тесты HDD/SSD-дисков и восстановить их образ. Все это производим с GUI — интерфейсом, а не через терминал.
246
247 В Ubuntu 20.04 **GNOME disks** идет в стандартной установке. Если вы не можете найти инструмент, то для установки используем команду:
248
249 {{{sudo apt-get install gnome-disk-utility}}}
250
251 Для запуска утилиты в терминале можно набрать команду:
252
253 {{{sudo gnome-disks}}}
254
255 [[image:https://obu4alka.ru/wp-content/uploads/2022/01/gnome-disk-e1641721722722.png||alt="gnome-disk" height="461" width="500"]]
256
257 Для проверки SMART информации выберите устройство и в правом верхнем углу нажимаем на //три точки/три тире// и выбираем //Данные самодиагностики и SMART информации//
258
259 [[image:https://obu4alka.ru/wp-content/uploads/2022/01/gnome-disk-smart-1024x553.png||alt="gnome-disk-smart" height="553" width="1024"]]