Короткий ответ
Команда — smartctl -a / nvme smart-log на стабильном имени (/dev/disk/by-id/...). За RAID укажите -d megaraid,N или -d cciss,N и сверьте SN. Читайте RAW: Pending, Offline uncorrectable, Reallocated, CRC, для NVMe percentage_used и media_errors. Overall PASSED при Pending>0 — предупреждение, готовьте замену. CRC без media — кабель. Как интерпретировать длиннее: SMART ошибки.
Не запускайте -t long на единственном диске degraded RAID 5 «для отчёта».
Симптомы и как отличить
Зачем эта статья: нужен воспроизводимый съём, не вердикт вендора в три строки. GUI TrueNAS «Failed» может быть температура. Windows «ОК» в управлении дисками SMART не показывает.
| Источник | Ограничение |
|---|---|
| smartctl на HBA | лучший |
| MegaRAID -d | нужен верный ID |
| USB-мост | часто ложь |
| iLO «predictive» | верьте, даже если smartctl PASS |
Возможные причины
- Нет smartmontools.
- RAID не passthrough.
- NVMe vs SCSI путаница устройства.
- Права root.
- Диск уже Offln, SAS не отвечает.
Диагностика
1. Установка и список
Ubuntu 22.04/24.04:
sudo apt-get update
sudo apt-get install -y smartmontools nvme-cli
ls -l /dev/disk/by-id/TrueNAS: Shell, пакеты обычно есть. Не ставьте случайный PPA.
2. Прямой SCSI/SATA/NVMe
sudo smartctl -i /dev/disk/by-id/wwn-0x5000c500example
sudo smartctl -H /dev/disk/by-id/wwn-0x5000c500example
sudo smartctl -a /dev/disk/by-id/wwn-0x5000c500example | tee /root/smart-wwn.txtNVMe:
sudo nvme id-ctrl /dev/nvme0n1
sudo nvme smart-log /dev/nvme0n1
sudo smartctl -a /dev/nvme0n1Сохраните файл в заявку.
3. MegaRAID
storcli /c0/eall/sall show
sudo smartctl -a -d megaraid,0 /dev/sdaПеребор DID 0,1,2… пока SN не совпадёт. /dev/sda здесь — SCSI-узел контроллера, не «первый диск ОС».
Иногда нужен -d sat+megaraid,N. Если smartctl пишет «Unknown USB bridge» — вы не на том device.
HPE:
sudo smartctl -a -d cciss,0 /dev/sg0sg узел Smart Array. Индекс = PD.
4. Short test (когда можно)
Массив Optimal, есть избыточность, окно I/O:
sudo smartctl -t short /dev/disk/by-id/wwn-0x5000c500example
sudo smartctl -l selftest /dev/disk/by-id/wwn-0x5000c500exampleДождитесь конца. FAILED selftest = замена, даже при странных атрибутах.
Не long test на Dgrd vd0.
5. Windows
Полноценный smartctl — с Windows-сборки smartmontools или с Linux live/HBA. Get-PhysicalDisk / Get-StorageReliabilityCounter — дополнение, не замена полного ATA SMART. Не Initialize disk.
Решение
Таблица для заявки:
- Замена скоро: Pending>0, Offline uncorrectable>0, selftest FAIL, NVMe media_errors рост, overall FAILED с media-атрибутами.
- Наблюдение: Reallocated стабильный малый, CRC не растёт после нового кабеля, температура была пиком.
- Не диск: не сняли SMART, неверный -d, USB.
- Износ SSD: percentage_used — TBW, не «сыпется пластина».
Дальше замена. ZFS CKSUM при чистом SMART — checksum, не игнор.
Автоматизация: userparameter с smartctl -A по списку WWN из /dev/disk/by-id. Не итерируйте /dev/sd[a-z]: после ребута буквы уедут и вы будете алертить чужой диск. Для MegaRAID храните карту DID на SN и обновляйте после каждой замены.
Пороги: Pending не меньше 1 — crit; рост Reallocated за неделю — crit; рост CRC за сутки — warn на кабель; percentage_used от 80 — warn. Overall FAILED — crit плюс разбор атрибута. Температура HDD от 55 градусов — вентиляция, не замена диска первым шагом.
Когда диск Offln, smartctl часто не открывает устройство. Тогда истина — storcli и iLO. Не пишите «SMART снять не смогли, диск живой»: Offln и есть состояние, дальше замена, не USB-адаптер на живом массиве.
Как проверить, что проблема устранена
После замены: новый файл smart-*.txt, PASSED, Pending=0, selftest без FAIL. Мониторинг прироста 7 дней. Для кабеля: CRC не растёт (абсолют может остаться старым).
Сам метод проверки SMART «устранён», когда любой админ по SN повторяет ту же команду.
Если не помогло
Permission denied: sudo, устройство занято экзотическим драйвером.INQUIRY failed: диск не отвечает, смотрите RAID state, не -a.- TrueNAS UI ≠ файл smartctl: разные пороги, приложите оба.
- SAS tape/enclosure в списке: не тот sg.
Профилактика
- Ежедневный
smartctl -Aв мониторинг (Zabbixsmartmontools). - Алерт на прирост, не на CRC с 2018 года.
- Имена только by-id в скриптах.
- Документ DID MegaRAID ↔ слот.
- Не SMART с USB-доков для прод-решения.
Раз в квартал сверяйте, что мониторинг SMART вообще собирает те же WWN, что в пуле tank и в storcli. После замены диска агент часто продолжает опрашивать старый DID и молчит о новом. Это слепая зона: следующий Pending вы увидите только когда контроллер уже Failed.
Для NVMe через PCIe switch смотрите ещё nvme error-log: единичные ошибки транспорта не всегда в percentage_used. Их рост — кабель/слот, как CRC на SATA. Не лечите firmware update «с сайта» без HCL контроллера/сервера.
Копия полного -a в тикете важнее скриншота UI TrueNAS: скрин не содержит ID атрибутов и порогов, по которым через месяц будут спорить с вендором RMA.
Не используйте SMART с USB-переходника как основание снять диск из vd0. Переходник врёт атрибуты, а массив в это время degraded без нужды. Снимайте на месте через -d megaraid,N или с HBA.
Если smartctl -H FAILED, а -A пустой — это не «диск мёртв по overall», это часто неверный -d или зависший SAS. Сначала -i и SN, потом вердикт. Запишите в runbook три рабочих команды под ваши контроллеры: прямой by-id, megaraid, cciss.
Для RMA сохраняйте сырой лог, серийник, часы Power_On и SMART selftest. Вендор просит их чаще, чем скрин TrueNAS. Не запускайте long test на последнем живом члене RAID 5 ради красивого вложения в письмо.
FAQ
-H PASSED достаточно?
Нет. Читайте -A/-a.
NVMe available_spare 10%?
Порог критичности, планируйте замену, не ждите 0.
Можно ли smartctl с Windows на iSCSI LUN?
Вы снимете SMART не того (часто виртуального) объекта. SMART диска — на NAS01/HBA, не на SQL01 LUN.
Temperature 46 °C HDD?
Высоковато, не FAILED само по себе. Вентиляция.
Нужен ли -x всегда?
Для NVMe/логов ошибок полезен. Для заявки HDD хватает -a плюс selftest при сомнении.