S.M.A.R.T. — технология самодиагностики и предсказания возможного отказа жесткого диска.
Установка под ubuntu
sudo apt-get install smartmontools # добавление в автозагрузку sudo update-rc.d smartmontools defaults
Установка под CentOS
sudo yum install smartmontools # добавление в автозагрузку sudo chkconfig smartmontools on
Пакет smartmontools состоит из двух утилит командной строки
Информация о диске /dev/sda
sudo smartctl -i /dev/sda
Если S.M.A.R.T. отключен, то для включения нужно выполнить команду
sudo smartctl -s on /dev/sda
Просмотр значений S.M.A.R.T. для устройства /dev/sda
sudo smartctl -A /dev/sda
Существует 2 типа атрибутов (колонка TYPE)
Критичные атрибуты:
Полный список атрибутов с описанием есть в вики.
Быстрый опрос диска на предмет живучести, с предсказанием отказа диска в ближайшие 24 часа
sudo smartctl -H /dev/sda
Список поддерживаемых тестов и примерное время на каждый текст
sudo smartctl -c /dev/sda
Запуск теста на проверку читаемости секторов
sudo smartctl -t short /dev/sda
Т.к. тест запускается в фоне, то статус проверки можно узнать с помощью
sudo smartctl -l selftest /dev/sda
Журнал ошибок, произошедших во время работы диска
sudo smartctl -l error /dev/sda
Журнал тестов самодиагностики
sudo smartctl -l selftest /dev/sda
Для периодического тестирования дисков настроим демон smartd, для этого нужно
Отредактируем файл /etc/default/smartmontools, удалив # перед start_smartd. Параметр smartd_opts отвечает за дополнительные опции для smartd, --interval говорит о периодичности проведения самодиагностики.
Настройка списка дисков для проверки и периодичности проверки:
# sudo vim /etc/smartd.conf /dev/sda -a -s (S/../../(1|3|6)/01|L) -m root@example.com -M diminishing
Описание используемых опций
После внесения правок в /etc/smartd.conf перезапустим демон, под ubuntu
sudo /etc/init.d/smartmontools restart
Если возникли ошибки, то нужно смотреть лог /var/log/daemon.log.
Для проверки работы email-оповещения нужно в /etc/smartd.conf, вместо -M diminishing поставить -M test.
Для установки GUI нужно выполнить
sudo apt-get install gsmartcontrol