Проверка жесткого диска в Linux: SMART тест и поиск бэд-блоков
Симптомы умирающего жесткого диска
Повреждение файловой системы, внезапный переход диска в режим Read-only filesystem, зависание сервера при операциях ввода-вывода (I/O Wait) и ошибки ввода-вывода (I/O error) в логе dmesg свидетельствуют о деградации диска.
Диагностика накопителя через smartctl
- Установите пакет утилит диагностики:
sudo apt update && sudo apt install smartmontools -y - Узнайте общее состояние здоровья накопителя (на примере
/dev/sda):
Если вывод содержитsudo smartctl -H /dev/sdaPASSED— критических аварий не обнаружено. - Посмотрите подробные SMART-атрибуты:
Обратите внимание на строки:sudo smartctl -A /dev/sdaReallocated_Sector_Ct(переназначенные сектора) иCurrent_Pending_Sector(кандидаты на сбой). Их значение в столбцеRAW_VALUEдолжно быть равно 0. - Запустите быстрый SMART-тест диска:
sudo smartctl -t short /dev/sda - Поиск битых секторов утилитой badblocks (безопасный режим чтения):
sudo badblocks -sv /dev/sda
Внимание: Для накопителей NVMe SSD используйте команду: sudo smartctl -a /dev/nvme0n1.
Частые вопросы (FAQ)
Что означает статус SMART Health Status: FAILED?
Диск находится в критическом состоянии и может окончательно отказать в любую минуту. Срочно сделайте резервную копию всех данных и замените накопитель.
Можно ли «исправить» битые сектора через badblocks?
Физически поврежденные сектора исправить нельзя. Программа может лишь пометить их, чтобы файловая система не пыталась производить в них запись.
Работает ли smartmontools внутри виртуальных машин (VPS)?
В большинстве виртуальных машин (KVM/VMware) гипервизор скрывает физические датчики SMART диска. Тест работает на физических выделенных серверах (Dedicated) или при прямом пробросе диска.
Как посмотреть температуру жесткого диска в консоли?
Температура отображается в выводе sudo smartctl -A /dev/sda в строке Temperature_Celsius.