SMART - аббревиатура означает Self Monitoring Analysing and Reporting Technology. На текущий момент поддержка SMART заявлена многими производителями жестких дисков. С помощью этой технологии можно выявить следующие проблемы:
Проблемы блока магнитных головок
Физические повреждения, логические ошибки
Проблемы привода, системы позиционирования
Проблемы электронной части (платы)
Превышение температуры.
Установка: Debian/Ubuntu
sudo apt-get install smartmontools
Centos
yum install smartmontools
Примеры запросов:
Посмотреть информацию о диске:
smartctl –i /dev/sda
Последняя строка в выводе SMART support is должна иметь значение Enabled. Если SMART отключен, включим его командой:
smartctl –s on /dev/sda
Посмотреть значение SMART можно командой:
smartctl –a /dev/sda
Полный список команд можно посмотреть через:
smartctl –h
Детальный вывод smartctl:
RAW_VALUE - Каждый атрибут имеет raw value 6-ти байтовое значение.
THRESH - минимальное возможное значение атрибута, при котором гарантируется безотказная работа накопителя.
VALUE - одно байтовое значение «нормализованное», изменяется в диапазоне от 0 до 255 (задается производителем). Маленькое значение говорит о быстрой деградации диска или о возможном скором сбое, т.е. чем выше значение тем лучше. Например в случае параметра «Airflow_Temperature_Cel» RAW_VALUE хранит температуру диска (50), а так же минимальную и максимальную температуру (Lifetime Min/Max 23/51), при которой сохраняется работоспособность диска. Firmware диска конвертирует RAW_VALUE в normalized value (VALUE) в диапазоне от 1 до 253. Если нормализованное значение (VALUE) меньше или равно THRESH, Атрибут считается failed и отображается в столбце WHEN_FAILED, как в текущем случае сбой был по атрибуту Airflow_Temperature_Cel.
WORST - минимальное нормализованное значение, которое достигалось с момента включения SMART на диске.
TYPE - существует 2 типа атрибутов:
Pre-fail -критичные атрибуты
Old_age - некритичные атрибуты (величина VALUE отведенная производителем до наработки на отказ).
Если VALUE стало меньше THRESH в случае Pre-fail атрибута - существует большая вероятность, что диск вылетит в ближайшие 24 часа. Если VALUE стало меньше THRESH в случае Old_age атрибута - существует большая вероятность, что диск вылетит т.к. выработан ресурс, но когда это произойдет не известно.
Критичные атрибуты:
- Raw_Read_Error_Rate - частота ошибок при чтении данных с диска, происхождение которых обусловлено аппаратной частью диска.
- Spin_Up_Time - время раскрутки пакета дисков из состояния покоя до рабочей скорости. При расчете VALUE значения практическое время сравнивается с некоторой эталонной величиной, установленной на заводе. Не ухудшающееся не максимальное значение при Spin Up Retry Count Value = max (Raw равном 0) не говорит ни о чем плохом. Отличие времени от эталонного может быть вызвано рядом причин, например просадка по вольтажу блока питания.
- Spin_Retry_Count - число повторных попыток раскрутки дисков до рабочей скорости, в случае если первая попытка была неудачной. Ненулевое значение Raw (соответственно не максимальное Value) свидетельствует о проблемах в механической части накопителя.
- Seek_Error_Rate - частота ошибок при позиционировании блока головок. Высокое значение Raw свидетельствует о наличии проблем, которыми могут являться повреждение сервометок, чрезмерное термическое расширение дисков, механические проблемы в блоке позиционирования и др. Постоянное высокое значение Value говорит о том, что все хорошо.
- Reallocated_Sector_Ct - число операций переназначения секторов. SMART в современных дисках способен произвести анализ сектора на стабильность работы «на лету» и в случае признания его сбойным, произвести его переназначение.
Некритичные атрибуты:
- Start_Stop_Count - полное число запусков/остановок шпинделя. Гарантировано мотор диска способен перенести лишь определенное число включений/выключений. Это значение выбирается в качестве Treshold. Первые модели дисков со скоростью вращения 7200 оборотов/мин имели ненадежный двигатель, могли перенести лишь небольшое их число и быстро выходили из строя.
- Power_On_Hours - число часов проведенных во включенном состоянии. В качестве порогового значения для него выбирается паспортное время наработки на отказ (MBTF). Обычно величина MBTF огромна, и маловероятно, что этот параметр достигнет критического порога. Но даже в этом случае выход из строя диска совершенно не обязателен.
- Power_Cycle_Count - количество полных циклов включения-выключения диска. По этому и предыдущему атрибуту можно оценить, например, сколько использовался диск до покупки.
- Temperature_Celsius - Здесь хранятся показания встроенного термодатчика. Температура имеет огромное влияние на срок службы диска (даже если она находится в допустимых пределах). Вернее имеет влияние не на срок службы диска а на частоту возникновения некоторых типов ошибок, которые влияют на срок службы.
- Current_Pending_Sector - Число секторов, являющихся кандидатами на замену. Они не были еще определенны как плохие, но считывание их отличается от чтения стабильного сектора, так называемые подозрительные или нестабильные сектора.
- Offline_Uncorrectable - число ошибок при обращении к сектору, которые не были скорректированы. Возможными причинами возникновения могут быть сбои механики или порча поверхности.
- UDMA_CRC_Error_Count - число ошибок, возникающих при передаче данных по внешнему интерфейсу. Могут быть вызваны некачественными кабелями, нештатными режимами работы.