Linux

Проверка здоровья SSD в Linux: полное руководство по SMART

В этом гайде вы научитесь диагностировать здоровье SSD-накопителя в Linux, используя утилиту smartctl. Вы узнаете, как читать атрибуты SMART, определять оставшийся ресурс и предсказывать отказ диска до его возникновения.

Обновлено 17 февраля 2026 г.
10-15 мин
Низкая
FixPedia Team
Применимо к:Ubuntu 20.04+Debian 11+CentOS 8+Любой дистрибутив с smartmontools

Введение / Зачем это нужно

Проверка здоровья SSD-накопителя — критически важная процедура для предотвращения внезапной потери данных. В отличие от HDD, SSD не издают характерных звуков при сбое, поэтому единственный способ оценить их состояние — анализ встроенной технологии SMART (Self-Monitoring, Analysis and Reporting Technology).

В этом гайде вы научитесь:

  • Устанавливать и использовать утилиту smartctl для диагностики SSD.
  • Читать и интерпретировать ключевые атрибуты SMART, специфичные для SSD.
  • Определять оставшийся ресурс накопителя (TBW — Total Bytes Written).
  • Выявлять ранние признаки износа и предсказывать отказ диска.

Процедура займет 10-15 минут и не требует специальных знаний, но потребует прав суперпользователя (sudo).

Требования / Подготовка

Перед началом убедитесь, что:

  1. У вас есть доступ к терминалу Linux с правами sudo.
  2. Установлен пакет smartmontools (инструкция ниже).
  3. Вы знаете имя устройства SSD, которое хотите проверить (например, /dev/nvme0n1 или /dev/sda).

💡 Совет: Если у вас несколько дисков, определите, какой из них SSD, по наличию в выводе lsblk слов nvme (для NVMe SSD) или по размеру/модели. Для SATA SSD имя обычно /dev/sdX.

Шаг 1: Установка smartmontools

Утилита smartctl входит в пакет smartmontools. Установите его:

Для Debian/Ubuntu и производных:

sudo apt update
sudo apt install smartmontools

Для RHEL/CentOS/Fedora:

sudo yum install smartmontools  # CentOS 7
sudo dnf install smartmontools  # CentOS 8+, Fedora

Для Arch Linux:

sudo pacman -S smartmontools

Проверьте установку:

smartctl --version

Шаг 2: Определение устройства SSD

Выполните команду, чтобы увидеть все блочные устройства:

lsblk

Пример вывода:

NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda           8:0    0 238,5G  0 disk 
├─sda1        8:1    0   512M  0 part /boot/efi
├─sda2        8:2    0   128G  0 part /
└─sda3        8:3    0   110G  0 part /home
nvme0n1     259:0    0 476,9G  0 disk 
├─nvme0n1p1 259:1    0   512M  0 part /boot
└─nvme0n1p2 259:2    0 476,4G  0 part /

Здесь nvme0n1 — это NVMe SSD, а sda — возможно, SATA SSD или HDD. Для проверки здоровья SSD используйте соответствующее имя устройства (например, /dev/nvme0n1).

Шаг 3: Просмотр общей информации о здоровье

Выполните быструю проверку общего состояния:

sudo smartctl -H /dev/ваше_устройство

Пример вывода для здорового диска:

smartctl 7.3 2022-02-28 r5338 [x86_64-linux-5.15.0-67-generic] (local build)
Copyright (C) 2002-22, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

Если видите FAILEDсоздайте резервную копию данных немедленно и планируйте замену диска.

Шаг 4: Анализ полного SMART-дампa

Для детального анализа выполните:

sudo smartctl -a /dev/ваше_устройство

Это выведет все SMART-атрибуты. Для SSD重点关注 следующие:

Ключевые атрибуты для SSD (SATA):

  • ID 5: Reallocated_Sector_Ct — количество переназначенных секторов. Ненулевые значения — признак износа.
  • ID 9: Power_On_Hours — время работы в часах.
  • ID 12: Power_Cycle_Count — количество циклов включения.
  • ID 173: Media_Wearout_Indicator (или Wear_Leveling_Count) — процент износа NAND. Значение 100 = новый, 0 = предел. Порог срабатывания обычно 10-20%.
  • ID 177: Wear_Leveling_Count (альтернатива 173) — аналогичный показатель износа.
  • ID 179: Used_Rsvd_Blk_Cnt_Tot (Samsung) — количество использованных резервных блоков.
  • ID 181: Program_Fail_Cnt_Total — сбои программирования ячеек.
  • ID 182: Erase_Fail_Count_Total — сбои стирания ячеек.
  • ID 183: Runtime_Bad_Block — плохие блоки, обнаруженные во время работы.
  • ID 187: Uncorrectable_Error_Cnt — некорректируемые ошибки.
  • ID 188: Command_Timeout — таймауты команд.
  • ID 190: Airflow_Temperature_Cel — температура (для некоторых SSD не актуально).
  • ID 194: Temperature_Celsius — температура датчика.
  • ID 195: Hardware_ECC_Recovered — исправленные ошибки ECC.
  • ID 196: Reallocated_Event_Count — события переназначения.
  • ID 197: Current_Pending_Sector — сектора, ожидающие переназначения (критично!).
  • ID 198: Offline_Uncorrectable — некорректируемые сектора при офлайн-тесте.
  • ID 199: UDMA_CRC_Error_Count — ошибки кабеля (для SATA).

Для NVMe SSD (используйте -a с -d nvme или просто smartctl -a):

  • SMART/Health Information: Critical Warning, Temperature, Available Spare, Available Spare Threshold.
  • Available Spare (свободный резерв) — процент резервных блоков. Ниже Threshold — диск близок к износу.
  • Data Units Written (или Total Bytes Written TBW) — общее количество записанных данных.
  • Media and Data Integrity Errors — ошибки целостности данных.
  • Number of Critical Warning — количество критических предупреждений.

Как читать значения:

Для каждого атрибута смотрите три колонки:

  • VALUE — текущее нормализованное значение (обычно 100 = идеально, уменьшается при износе).
  • THRESH — пороговое значение. Если VALUETHRESH — атрибут в критическом состоянии.
  • WORST — худшее значение за время работы.

Пример проблемного атрибута:

ID 173 Used_Rsvd_Blk_Cnt_Tot 0x0032 100 100 0 - 0

Здесь VALUE=100, THRESH=0 (нет порога) — всё хорошо.

Но если:

ID 5 Reallocated_Sector_Ct 0x0033 090 090 000 - 10

VALUE=90, THRESH=10 — пока в норне, но следите за динамикой.

⚠️ Важно: Некоторые атрибуты (особенно Media_Wearout_Indicator) могут увеличиваться со временем (например, с 100 до 99), что нормально. Критично — когда VALUE опускается ниже THRESH.

Шаг 5: Запуск расширенного теста (опционально)

Для глубокой проверки запустите длительный тест (может занять 1-10 часов в зависимости от диска):

sudo smartctl -t long /dev/ваше_устройство

После завершения (посмотрите прогресс через sudo smartctl -c /dev/устройство) снова выполните sudo smartctl -a /dev/устройство и проверьте результаты теста в секции SMART Self-test log.

::in-article-ad

::

Проверка результата

Успешный результат:

  • В выводе smartctl -HPASSED.
  • Нет атрибутов, где VALUETHRESH.
  • Для NVMe: Available Spare > Available Spare Threshold.
  • Media Wearout Indicator (или аналоги) > 20 (чем выше, тем лучше).

Критический результат:

  • SMART overall-health self-assessment test result: FAILED.
  • Любой атрибут с VALUETHRESH (особенно Reallocated_Sector_Ct, Current_Pending_Sector, Offline_Uncorrectable).
  • Для NVMe: Available SpareAvailable Spare Threshold.
  • Резкое падение Media Wearout Indicator (например, с 90 до 50 за месяц).

Действия при критическом результате:

  1. Немедленно создайте полный бэкап данных на другой носитель.
  2. Замените SSD. Не продолжайте использовать диск с FAILED — отказ может произойти в любой момент.

Возможные проблемы

Проблема 1: SMART command failed: scsi error unsolicited sense data

Причина: Диск занят (например, смонтирован и активно используется) или не поддерживает SMART в текущем режиме. Решение: Убедитесь, что disc не используется, или попробуйте добавить флаг -d ata для SATA: sudo smartctl -a -d ata /dev/device.

Проблема 2: Unable to detect device type

Причина: Неправильное имя устройства или драйвер не поддерживает SMART. Решение: Проверьте имя устройства через lsblk. Для NVMe SSD иногда требуется явно указать тип: sudo smartctl -a -d nvme /dev/nvme0.

Проблема 3: SMART support is: Unavailable

Причина: Диск не поддерживает SMART (редко для SSD) или SMART отключен в BIOS/UEFI. Решение: Проверьте настройки BIOS/UEFI, включите опции SATA Mode (AHCI) и SMART. Для некоторых виртуальных машин SMART недоступен.

Проблема 4: Read SMART Data Failed: Input/output error

Причина: Аппаратная ошибка диска или кабеля (для SATA). Решение: Проверьте соединение кабеля SATA (если применимо), попробуйте другой порт. Если ошибка повторяется — диск неисправен.

Проблема 5: Unknown USB bridge или ATA device is not ready

Причина: SSD подключен через USB-адаптер, который не передает SMART-команды. Решение: Подключите SSD напрямую к материнской плате (SATA/NVMe). Через USB многие адаптеры не поддерживают SMART.

Проблема 6: Нет атрибута Media Wearout Indicator

Причина: Утилита smartctl не распознала его или производитель использует другой ID. Решение: Ищите атрибуты с названиями Wear_Leveling_Count, Total_LBAs_Written, Data_Units_Written или Percentage_Used. Используйте sudo smartctl -a /dev/device | grep -i wear для поиска.

Проблема 7: Низкая температура (например, 20°C) — это норма?

Причина: Некоторые SSD не имеют точного датчика температуры или показывают усредненное значение. Решение: Температура SSD обычно не критична (работает до 70-80°C). Сосредоточьтесь на атрибутах износа и ошибок.

Проблема 8: Как оценить TBW (Total Bytes Written) из SMART?

Решение: Найдите атрибут Data Units Written (NVMe) или Total_LBAs_Written (SATA). Умножьте значение на размер сектора (обычно 512 байт или 1000 байт). Пример для NVMe:

Data Units Written: 123,456,789 [63.1 TB]

Здесь уже указано в TB. Для SATA:

Total_LBAs_Written: 1234567890

Тогда TBW = 1234567890 * 512 / 1000^4 ≈ 0.56 TB (если сектор 512 байт).

Проблема 9: smartctl не видит диск в списке

Решение: Убедитесь, что диск правильно подключен и определяется системой (lsblk). Для RAID-массивов или оборудования, скрывающего диски (например, некоторые корпоративные SSD через HW RAID), SMART может быть недоступен. Используйте утилиты производителя RAID-контроллера.

Проблема 10: Как мониторить SSD автоматически?

Решение: Настройте регулярный запуск smartctl -H через cron (например, раз в день) и отправку отчетов на email при FAILED. Пример строки crontab:

0 2 * * * /usr/sbin/smartctl -H /dev/nvme0 >> /var/log/smart.log 2>&1

Или используйте демоны вроде smartd из smartmontools.

Заключение

Регулярная проверка здоровья SSD через SMART — это простой и эффективный способ избежать внезапной потери данных. Процесс занимает минуты, но дает ценную информацию об оставшемся ресурсе накопителя. Начните с установки smartmontools и запустите smartctl -a для своих дисков. Запомните: при любых признаках FAILED или переназначенных секторов — немедленно создавайте бэкап и планируйте замену диска.

Важно: SMART — не гарантия, но лучший доступный инструмент. Даже диск с PASSED может внезапно отказать, поэтому всегда имейте актуальную резервную копию важных данных.

Часто задаваемые вопросы

Что такое SMART и зачем он нужен для SSD?
Какая команда показывает здоровье SSD в Linux?
Как интерпретировать атрибут 'Media Wearout Indicator'?
Что делать, если SMART показывает 'FAILED'?

Полезное

Установка smartmontools
Определение устройства SSD
Просмотр общей информации о здоровье
Анализ полного SMART-дампa
Запуск расширенного теста (опционально)