Проверка SMART информации HDD/SSD на Linux
Проверка SMART информации HDD/SSD на Linux
Сегодня поговорим о том, как можно проверить SMART информацию HDD/SSD дисков на Linux системах. Проверять будем утилитой smartmontools.
Содержание
1. Тестирование HDD/SSD дисков
2. Журналы ошибок диска
3. Примеры SMART информации
4. Проверка работоспособности SSD/HDD дисков с помощью Gnome Disks
Проверка HDD/SSD дисков
sudo smartctl -d ata -H /dev/sda
- d – Указывает тип устройства.
- ata – тип устройства ATA, используйте scsi для типа устройства SCSI.
- H – Проверяет устройство, чтобы сообщить о его состоянии и работоспособности.
У меня вывод был следующий:
=== START OF READ SMART DATA SECTION === SMART overall-health self-assessment test result: PASSED
По данному выводу можно сказать, что диск в порядке.
Тестирование HDD/SSD дисков
Теперь давайте протестируем диск. Чтобы инициировать короткий тест (short), выполните следующую команду::
sudo smartctl -t short /dev/sda
Получим вывод о том, что тест будет продолжаться 2 минуты.
=== START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION === Sending command: "Execute SMART Short self-test routine immediately in off-line mode". Drive command "Execute SMART Short self-test routine immediately in off-line mode" successful. Testing has begun. Please wait 2 minutes for test to complete. Test will complete after Sun Jan 9 12:15:34 2022 +04 Use smartctl -X to abort test.
Запустим selftest команду, отчет о проверки диска, с отсрочкой на две минуты:
sudo sh -c 'sleep 120 && smartctl -l selftest /dev/sda'
Мой вывод был следующий
=== START OF READ SMART DATA SECTION === SMART Self-test log structure revision number 1 Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error # 1 Short offline Completed without error 00% 11815
Прогоним тесты ещё раз. В конце получаю вот такой результат:
=== START OF READ SMART DATA SECTION === SMART Self-test log structure revision number 1 Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error # 1 Short offline Completed without error 00% 11815 - # 2 Short offline Completed without error 00% 11815
Тесты совпадают, значит с диском все в порядке. Если у вас будут разные результаты, то советую такой диск поменять.
Чтобы инициировать расширенный тест (long), выполните следующую команду:
sudo smartctl -t long /dev/sda
Получим вывод о том, что тест будет продолжаться 30 минут.
Запустим selftest команду, отчет о проверки диска, с отсрочкой на 30 минут:
sudo sh -c 'sleep 1800 && smartctl -l selftest /dev/sda'
Получим следующий вывод:
=== START OF READ SMART DATA SECTION === 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% 11816 - # 2 Short offline Completed without error 00% 11815 - # 3 Short offline Completed without error 00% 11815 -
Тесты совпадают, значит с диском все в порядке.
Журналы ошибок диска
Вы можете распечатать журналы ошибок диска с помощью команды:
sudo smartctl -l error /dev/sda
=== START OF READ SMART DATA SECTION === SMART Error Log Version: 1 No Errors Logge
На диске /dev/sda ошибок нет.
Приведу пример с диска с ошибками:
=== START OF READ SMART DATA SECTION === SMART Error Log Version: 1 ATA Error Count: 41 (device log contains only the most recent five errors) CR = Command Register [HEX] FR = Features Register [HEX] SC = Sector Count Register [HEX] SN = Sector Number Register [HEX] CL = Cylinder Low Register [HEX] CH = Cylinder High Register [HEX] DH = Device/Head Register [HEX] DC = Device Command Register [HEX] ER = Error register [HEX] ST = Status register [HEX] Powered_Up_Time is measured from power on, and printed as DDd+hh:mm:SS.sss where DD=days, hh=hours, mm=minutes, SS=sec, and sss=millisec. It "wraps" after 49.710 days. Error 41 occurred at disk power-on lifetime: 5420 hours (225 days + 20 hours) When the command that caused the error occurred, the device was active or idle. After command completion occurred, registers were: ER ST SC SN CL CH DH -- -- -- -- -- -- -- 40 51 40 30 c5 33 e4 Error: UNC 64 sectors at LBA = 0x0433c530 = 70501680 Commands leading to the command that caused the error were: CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name -- -- -- -- -- -- -- -- ---------------- -------------------- c8 00 40 30 c5 33 e4 08 00:40:53.424 READ DMA ef 10 02 00 00 00 a0 08 00:40:53.423 SET FEATURES [Enable SATA feature] ec 00 00 00 00 00 a0 08 00:40:53.422 IDENTIFY DEVICE ef 03 46 00 00 00 a0 08 00:40:53.422 SET FEATURES [Set transfer mode] Error 40 occurred at disk power-on lifetime: 5420 hours (225 days + 20 hours) When the command that caused the error occurred, the device was active or idle. After command completion occurred, registers were: ER ST SC SN CL CH DH -- -- -- -- -- -- -- 40 51 40 30 c5 33 e4 Error: UNC 64 sectors at LBA = 0x0433c530 = 70501680 Commands leading to the command that caused the error were: CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name -- -- -- -- -- -- -- -- ---------------- -------------------- c8 00 40 30 c5 33 e4 08 00:40:51.701 READ DMA ef 10 02 00 00 00 a0 08 00:40:51.701 SET FEATURES [Enable SATA feature] ec 00 00 00 00 00 a0 08 00:40:51.699 IDENTIFY DEVICE ef 03 46 00 00 00 a0 08 00:40:51.699 SET FEATURES [Set transfer mode] Error 39 occurred at disk power-on lifetime: 5420 hours (225 days + 20 hours) When the command that caused the error occurred, the device was active or idle. After command completion occurred, registers were: ER ST SC SN CL CH DH -- -- -- -- -- -- -- 40 51 40 30 c5 33 e4 Error: UNC 64 sectors at LBA = 0x0433c530 = 70501680 Commands leading to the command that caused the error were: CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name -- -- -- -- -- -- -- -- ---------------- -------------------- c8 00 40 30 c5 33 e4 08 00:40:49.977 READ DMA ef 10 02 00 00 00 a0 08 00:40:49.977 SET FEATURES [Enable SATA feature] ec 00 00 00 00 00 a0 08 00:40:49.976 IDENTIFY DEVICE ef 03 46 00 00 00 a0 08 00:40:49.976 SET FEATURES [Set transfer mode] Error 38 occurred at disk power-on lifetime: 5420 hours (225 days + 20 hours) When the command that caused the error occurred, the device was active or idle. After command completion occurred, registers were: ER ST SC SN CL CH DH -- -- -- -- -- -- -- 40 51 40 30 c5 33 e4 Error: UNC 64 sectors at LBA = 0x0433c530 = 70501680 Commands leading to the command that caused the error were: CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name -- -- -- -- -- -- -- -- ---------------- -------------------- c8 00 40 30 c5 33 e4 08 00:40:48.254 READ DMA ef 10 02 00 00 00 a0 08 00:40:48.254 SET FEATURES [Enable SATA feature] ec 00 00 00 00 00 a0 08 00:40:48.253 IDENTIFY DEVICE ef 03 46 00 00 00 a0 08 00:40:48.253 SET FEATURES [Set transfer mode] Error 37 occurred at disk power-on lifetime: 5420 hours (225 days + 20 hours) When the command that caused the error occurred, the device was active or idle. After command completion occurred, registers were: ER ST SC SN CL CH DH -- -- -- -- -- -- -- 40 51 40 30 c5 33 e4 Error: UNC 64 sectors at LBA = 0x0433c530 = 70501680 Commands leading to the command that caused the error were: CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name -- -- -- -- -- -- -- -- ---------------- -------------------- c8 00 40 30 c5 33 e4 08 00:40:46.531 READ DMA ef 10 02 00 00 00 a0 08 00:40:46.530 SET FEATURES [Enable SATA feature] ec 00 00 00 00 00 a0 08 00:40:46.529 IDENTIFY DEVICE ef 03 46 00 00 00 a0 08 00:40:46.529 SET FEATURES [Set transfer mode]
Примеры SMART информации
Выведем полный список SMART информации нашего HDD/SSD. В данном случае тестирую SSD.
sudo smartctl -a /dev/sda
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE 1 Raw_Read_Error_Rate 0x0032 100 100 000 Old_age Always - 405 9 Power_On_Hours 0x0032 100 100 000 Old_age Always - 11816 12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 107 148 Unknown_Attribute 0x0000 100 100 000 Old_age Offline - 0 149 Unknown_Attribute 0x0000 100 100 000 Old_age Offline - 0 167 Write_Protect_Mode 0x0000 100 100 000 Old_age Offline - 0 168 SATA_Phy_Error_Count 0x0012 100 100 000 Old_age Always - 0 169 Bad_Block_Rate 0x0000 100 100 000 Old_age Offline - 35 170 Bad_Blk_Ct_Erl/Lat 0x0000 100 100 010 Old_age Offline - 0/24 172 Erase_Fail_Count 0x0032 100 100 000 Old_age Always - 0 173 MaxAvgErase_Ct 0x0000 100 100 000 Old_age Offline - 180 (Average 160) 181 Program_Fail_Count 0x0032 100 100 000 Old_age Always - 0 182 Erase_Fail_Count 0x0000 100 100 000 Old_age Offline - 0 187 Reported_Uncorrect 0x0032 100 100 000 Old_age Always - 0 192 Unsafe_Shutdown_Count 0x0012 100 100 000 Old_age Always - 102 194 Temperature_Celsius 0x0022 026 038 000 Old_age Always - 26 (Min/Max 11/38) 196 Reallocated_Event_Count 0x0032 100 100 000 Old_age Always - 0 199 SATA_CRC_Error_Count 0x0032 100 100 000 Old_age Always - 0 218 CRC_Error_Count 0x0032 100 100 000 Old_age Always - 0 231 SSD_Life_Left 0x0000 084 084 000 Old_age Offline - 84 233 Flash_Writes_GiB 0x0032 100 100 000 Old_age Always - 11909 241 Lifetime_Writes_GiB 0x0032 100 100 000 Old_age Always - 4604 242 Lifetime_Reads_GiB 0x0032 100 100 000 Old_age Always - 3754 244 Average_Erase_Count 0x0000 100 100 000 Old_age Offline - 160 245 Max_Erase_Count 0x0000 100 100 000 Old_age Offline - 180 246 Total_Erase_Count 0x0000 100 100 000 Old_age Offline - 598192
- Reallocated Sectors Count — Количество секторов, перераспределенных из-за ошибок чтения.
- Power_On_Hours — Фактически отработанное время в часах.
- Power_Cycle_Count — Цикл включения.выключения
- Reported Uncorrect — Количество неисправимых ошибок при доступе к сектору чтения/записи.
- Reallocated_Error_Count — Текущее состояние перемещения поврежденных секторов в специальную рабочую область.
Проверка работоспособности SSD/HDD дисков с помощью Gnome Disks
С помощью утилиты GNOME disks можно получить информацию о дисках, отформатировать диски, создать образ диска, выполнить стандартные тесты HDD/SSD-дисков и восстановить их образ. Все это производим с GUI — интерфейсом, а не через терминал.
В Ubuntu 20.04 GNOME disks идет в стандартной установке. Если вы не можете найти инструмент, то для установки используем команду:
sudo apt-get install gnome-disk-utility
Для запуска утилиты в терминале можно набрать команду:
sudo gnome-disks
Для проверки SMART информации выберите устройство и в правом верхнем углу нажимаем на три точки/три тире и выбираем Данные самодиагностики и SMART информации