Короткий ответ

SMART — это тренды и пороги, не приговор по одному жёлтому в GUI. Снимите smartctl -a (HDD) / nvme smart-log (NVMe). Pending и Offline uncorrectable — готовьте замену. Рост Reallocated — тоже, особенно если ускоряется. UDMA_CRC_Error_Count без media-атрибутов — сначала кабель/backplane. Wear SSD — TBW и write amp, не «сейчас сыпется пластина».

За RAID-контроллером нужен правильный -d megaraid,N / -d cciss,N, иначе вы читаете не тот диск или ничего.

Симптомы и как отличить

Типичная картина:

  • TrueNAS: диск DEGRADED в UI из-за SMART, пул tank ещё ONLINE;
  • Zabbix: smart_realloc > 0;
  • контроллер Predictive Failure при ещё Onln;
  • overall PASSED, но Pending = 8.
Атрибут / полеСкорее
Reallocated_Sector_Ct растётмедиа, план replace
Current_Pending_Sectorнестабильные сектора, replace
Offline_Uncorrectableто же
UDMA_CRC / Reported_Uncorrectпуть SAS/SATA
Temperature 50–55 °C HDDвентиляторы, не сразу диск
NVMe Percentage Used 90%+износ, не checksum
Helium / load cycle огромныйсмотреть модель, не паниковать одному числу

Похожие сбои: ZFS checksum может быть RAM/кабель при чистом SMART.

Возможные причины

  1. Деградация поверхности HDD.
  2. Плохой кабель, reseat, expander (CRC).
  3. Перегрев, throttling SSD, нестабильные NAND.
  4. Ложные пороги vendor в smartmontools без -d sat.
  5. Диск за RAID отдаёт урезанный SMART.
  6. Счётчики CRC не сбрасываются после замены кабеля — смотрите прирост, не абсолют с 2019 года.

Диагностика

1. Прямой диск (HBA / TrueNAS / Ubuntu)

smartctl -i /dev/disk/by-id/wwn-0x5000c500example
smartctl -a /dev/disk/by-id/wwn-0x5000c500example
smartctl -x /dev/disk/by-id/wwn-0x5000c500example

Всегда by-id, не /dev/sde. Сохраните полный вывод.

NVMe:

nvme smart-log /dev/nvme0n1
nvme error-log /dev/nvme0n1

Поля: percentage_used, media_errors, num_err_log_entries, unsafe_shutdowns.

2. За MegaRAID

storcli /c0/eall/sall show
smartctl -a -d megaraid,0 /dev/sda

0 — MegaRAID PD ID (DID), не номер слота и не Linux. Перебор неверного ID даст чужой SMART — сверяйте SN в -i с этикеткой.

HPE:

smartctl -a -d cciss,0 /dev/sg0

Индекс — позиция у Smart Array. Если smartctl не умеет этот RAID — берите SMART из ssacli/ssacli ctrl slot=0 pd 1I:1:3 show (если vendor отдаёт).

3. Тест, который не убивает массив

smartctl -t short на диске вне критичного RAID 5 degraded — осторожно по нагрузке. На единственном Dgrd-члене long test не запускайте «для интереса»: это ещё I/O. Для планирования достаточно атрибутов и логов контроллера.

4. Сопоставить с RAID/ZFS

storcli /c0/vall show
zpool status tank

Predictive + CKSUM на том же WWN — replace. Только CRC + ZFS 0 errors — кабель, диск оставьте, наблюдайте.

Решение

Сценарий A. Pending / Offline uncorrectable / рост Reallocated

Плановая замена по процедуре. Backup, locate, тот же слот. Не format SMART-диска «чтобы обнулить сектора».

Сценарий B. Только CRC растёт

Замена кабеля, reseat, другой bay. Сброс счётчика SMART не обязателен и часто невозможен; документируйте baseline «CRC=12000 на дату, дальше 0 прироста».

Сценарий C. NVMe Percentage Used высокий, media_errors = 0

Это износ. Смотрите TBW vs datasheet, нагрузку записи. Замена до 100% used, не после ENOSPC/read-only firmware.

Сценарий D. Overall FAILED, атрибуты пустые/нечитаемые

Прошивка, USB-мост, неправильный -d. Сначала как снять SMART, потом вердикт.

Сценарий E. TrueNAS помечает диск, пул здоров

Не zpool replace в ту же минуту, если SMART = CRC. Заведите тикет, кабель, повтор через сутки. Если Offline uncorrectable — replace по UI TrueNAS после backup, с правильным disk id.

Для заявки полезен короткий протокол: дата, хост, WWN/SN, команда целиком, overall, пять RAW-полей (5, 197, 198, 199, температура), для NVMe — percentage_used и media_errors. Два снятия с интервалом 24 часа отличают «старый шрам» от активного роста. Без второго снятия легко заменить диск, у которого Reallocated застыл три года назад.

На SSD смотрите ещё Available Spare и Critical Warning в nvme smart-log. Нулевой spare при низком percentage_used бывает на браке NAND — это не «надо TRIM». На HDD «Load_Cycle_Count» у десктопных моделей в NAS может быть огромным и не равен отказу; не используйте его как единственный триггер замены в RAID.

Если контроллер уже Predictive Failure, а smartctl PASSED, в тикете пишите оба факта. Для hardware RAID политика «контроллер выводит диск» важнее домашнего порога smartmontools: иначе вы спорите с firmware, который уже исключил PD из redundancy на следующем patrol.

Как проверить, что проблема устранена

Новый диск: PASSED, Pending=0, Reallocated=0 (или заводской нуль). CRC не растёт после нового кабеля. RAID Optl / ZFS ONLINE, scrub без новых CKSUM. Мониторинг: diff атрибутов за 7 дней = 0 по media.

Если не помогло

  • После замены те же Pending на новом в том же слоте — backplane, не партия дисков.
  • ZFS checksum при идеальном SMART — RAM ECC, кабель, другой диск в vdev.
  • Контроллер Predictive, smartctl PASSED: верьте контроллеру для RAID, планируйте replace.
  • USB enclosure врёт SMART — не используйте как источник истины для прод.

Профилактика

  • Сбор smartctl -A раз в день, алерт на прирост Pending/Realloc, не на абсолют CRC.
  • Пороги отдельно HDD vs SSD vs NVMe.
  • Не заполнять диски тестами на проде каждую ночь.
  • Запасной диск того же объёма.
  • Температура HDD < ~40–45 °C в стойке по возможности.

FAQ

Reallocated = 4 стабильно год. Менять?

Стабильные единицы после старого события — наблюдайте. Рост на +10 за неделю — меняйте.

Нужен ли smartctl -t long перед RMA?

Вендоры часто просят лог. На зеркале/RAID 6 — в окне. На RAID 5 degraded — нет, замена важнее теста.

TrueNAS «Failed SMART» vs smartctl PASSED?

Разные пороги (temperature, seek error). Читайте какой атрибут UI считает failed.

Можно ли zero-fill чтобы SMART обнулился?

Переразметка скрывает Pending ценой данных. На члене RAID это не ремонт. RMA.

Attribute 5 raw 0, worst низкий. Что это?

Нормализованные значения vendor. Смотрите RAW и документацию модели, не «threshold 140» из таблиц 2010 года вслепую.