Smart — Self Monitoring Analysing and Reporting Technology.
Какие проблемы позволяет выявить эта технология:
1)Проблемы блока магнитных головок
2)Повреждения дисков (физичесские повреждения, логичесские ошибки и т.п.)
3)Проблемы механики (Привода, системы позиционирования)
4)Проблемы электронной части (платы)
5)Температура
Ставим пакет smartmontools (поддерживаемые ОС Linux/Solaris/FreeBSD/NetBSD/OpenBSD/Cygwin, и Windows)
Компилируются 2 приложения: smartctl — Control and Monitor Utility for SMART Disks.
Поддерживает многие ATA-3 и более поздние ATA, IDE, SATA и SCSI-3 диски. И демон smartd.
smartd — пытается включить SMART monitoring на ATA устройствах (аналогично smartctl -s on) и будет опрашивать устройства каждые 30 минут (это конфигурируемо), логирует ошибки дисков и изменения атрибутов через SYSLOG интерфейс. Лог по-умолчанию /var/log/messages.В дополнение к логированию в файл, smartd может быть сконфигурирован для отсылки предупреждений на email в случае обнаружения проблемы. Если вы пошлете USR1 сигнал smartd (для тех, кто в танке — команда kill) он немедленно проверит статус диска и вернется к состоянию «опроса диска каждые 30 минут»
Читаем дальше: man smartctl, man smartd, man smartd.conf
Выясняем, поддерживает ли диск SMART. ~ #smartctl -i /dev/hda
Включаем SMART, если выключен. ~ #smartctl -s /dev/hda
Для получения всей информации о диске: ~ # smartctl —all /dev/hda
=== START OF INFORMATION SECTION === Device Model: SAMSUNG SP0802N Serial Number: S00JJ10X732974 Firmware Version: TK200-04 User Capacity: 80,060,424,192 bytes Device is: In smartctl database [for details use: -P show] ATA Version is: 7 ATA Standard is: ATA/ATAPI-7 T13 1532D revision 0 Local Time is: Fri Dec 7 22:45:11 2007 MSK ==> WARNING: May need -F samsung or -F samsung2 enabled; see manual for details. SMART support is: Available - device has SMART capability. SMART support is: Enabled SMART Attributes Data Structure revision number: 16 Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE 1 Raw_Read_Error_Rate 0x000f 100 100 051 Pre-fail Always - 1 3 Spin_Up_Time 0x0007 100 001 025 Pre-fail Always In_the_past 4160 4 Start_Stop_Count 0x0032 100 100 000 Old_age Always - 648 5 Reallocated_Sector_Ct 0x0033 100 100 011 Pre-fail Always - 0 7 Seek_Error_Rate 0x000f 100 100 051 Pre-fail Always - 0 8 Seek_Time_Performance 0x0025 100 100 015 Pre-fail Offline - 0 9 Power_On_Hours 0x0032 098 098 000 Old_age Always - 1405464 10 Spin_Retry_Count 0x0033 100 100 051 Pre-fail Always - 0 11 Calibration_Retry_Count 0x0012 100 100 000 Old_age Always - 0 12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 412 194 Temperature_Celsius 0x0022 124 100 000 Old_age Always - 38 195 Hardware_ECC_Recovered 0x001a 100 100 000 Old_age Always - 15821016 196 Reallocated_Event_Count 0x0032 100 100 000 Old_age Always - 0 197 Current_Pending_Sector 0x0012 100 100 000 Old_age Always - 0 198 Offline_Uncorrectable 0x0030 100 100 000 Old_age Offline - 0 199 UDMA_CRC_Error_Count 0x003e 200 200 000 Old_age Always - 1 200 Multi_Zone_Error_Rate 0x000a 100 100 051 Old_age Always - 0 201 Soft_Read_Error_Rate 0x000a 100 100 051 Old_age Always - 0
Жить этому самсунгу еще и жить…
Вот только был сбой Spin_Up_Time (время раскрутки пакета дисков из состояния покоя до рабочей скорости.) что может быть вызвано рядом причин. И, если текущее значение велико — Единичный сбой не повод для беспокойства.
Разберем детально вывод smartctl:
RAW_VALUE — Каждый атрибут имеет raw value 6-ти байтовое значение VALUE — одно байтовое значение «нормализованное» :). Например в случае параметра «температура» raw value хранит температуру диска (например 29 градусов)+ минимальную и максимальную температуру, при которой сохраняется работоспособность диска (например 23 и 33 градуса). Формат raw data определяется производителем и не описан в стандарте. firmware диска конвертирует raw value в normalized value в диапазоне от 1 до 253. Если это нормализованное значение меньше или равно threshold (THRESH), Атрибут считается failed и отображается в столбце WHEN_FAILED.
В нашем случае был сбой Spin_Up_Time. Если этот столбец пуст, все атрибуты в норме. Минимальное (WORST) нормализованное значение тоже показано;
Это минимальное значение которое достигалось с момента включения SMART на диске. TYPE — существует 2 типа атрибутов:
Критичные атрибуты: (Pre-fail) Некритичные атрибуты: (Old_age) (величина value отведенная вендором до наработки на отказ (ресурс)). Если VALUE стало меньше THRESH в случае Pre-fail атрибута — существует большая вероятность, что диск вылетит в ближайшие 24 часа. Если VALUE стало меньше THRESH в случае Old_age атрибута — существует большая вероятность, что диск вылетит т.к. выработан ресурс. Вот только когда — науке это неизвестно. Названия/значения атрибутов и интерпретация raw values не определена никаким стандартом. Иногда различные производители используют одинаковый Attribute ID для различных целей. Поэтому интерпретация специфических атрибутов smartctl может быть изменена опцией -v.
Итак просветились, и смотрим параметры своего диска: smartctl -s on —all /dev/ad0
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE 1 Raw_Read_Error_Rate 0x000f 100 100 051 Pre-fail Always - 0 3 Spin_Up_Time 0x0007 100 100 025 Pre-fail Always - 4096 4 Start_Stop_Count 0x0032 099 099 000 Old_age Always - 1979 5 Reallocated_Sector_Ct 0x0033 100 100 011 Pre-fail Always - 0 7 Seek_Error_Rate 0x000f 100 100 051 Pre-fail Always - 0 8 Seek_Time_Performance 0x0025 100 100 015 Pre-fail Offline - 0 9 Power_On_Half_Minutes 0x0032 100 100 000 Old_age Always - 4821h+43m 10 Spin_Retry_Count 0x0033 100 100 051 Pre-fail Always - 0 11 Calibration_Retry_Count 0x0012 100 100 000 Old_age Always - 1 12 Power_Cycle_Count 0x0032 099 099 000 Old_age Always - 1153 194 Temperature_Celsius 0x0022 151 109 000 Old_age Always - 29 195 Hardware_ECC_Recovered 0x001a 100 100 000 Old_age Always - 0 196 Reallocated_Event_Count 0x0032 100 100 000 Old_age Always - 0 197 Current_Pending_Sector 0x0012 100 100 000 Old_age Always - 0 198 Offline_Uncorrectable 0x0030 100 100 000 Old_age Offline - 0 199 UDMA_CRC_Error_Count 0x003e 200 200 000 Old_age Always - 0 200 Multi_Zone_Error_Rate 0x000a 100 100 051 Old_age Always - 0 201 Soft_Read_Error_Rate 0x000a 100 100 051 Old_age Always - 0
Текущее состояние 100 критическое 51, если я сам все правельно аонимаю то пора бы задумать о замене.
Критичные атрибуты:
Raw Read Error Rate — частота ошибок при чтении данных с диска, происхождение которых обусловлено аппаратной частью диска.
Spin Up Time — время раскрутки пакета дисков из состояния покоя до рабочей скорости. При расчете нормализованного значения (Value) практическое время сравнивается с некоторой эталонной величиной, установленной на заводе. Не ухудшающееся немаксимальное значение при Spin Up Retry Count Value = max (Raw равном 0) не говорит ни о чем плохом. Отличие времени от эталонного может быть вызвано рядом причин, например просадка по вольтажу блока питания.
Spin Up Retry Count — число повторных попыток раскрутки дисков до рабочей скорости, в случае если первая попытка была неудачной. Ненулевое значение Raw (соответственно немаксимальное Value) свидетельствует о проблемах в механической части накопителя.
Seek Error Rate — частота ошибок при позиционировании блока головок. Высокое значение Raw свидетельствует о наличии проблем, которыми могут являться повреждение сервометок, чрезмерное термическое расширение дисков, механические проблемы в блоке позиционирования и др. Постоянное высокое значение Value говорит о том, что все хорошо.
Reallocated Sector Count — число операций переназначения секторов. SMART в современных дисках способен произвести анализ сектора на стабильность работы «на лету» и в случае признания его сбойным, произвести его переназначение.
Некритичные атрибуты:
Start/Stop Count — полное число запусков/остановов шпинделя. Гарантировано мотор диска способен перенести лишь определенное число включений/выключений. Это значение выбирается в качестве Treshold. Первые модели дисков со скоростью вращения 7200 оборотов/мин имели ненадежный двигатель, могли перенести лишь небольшое их число и быстро выходили из строя.
Power On Hours — число часов проведенных во включенном состоянии. В качестве порогового значения для него выбирается паспортное время наработки на отказ (MTBF). Обычно величина MTBF огромна, и маловероятно, что этот параметр достигнет критического порога. Но даже в этом случае выход из строя диска совершенно не обязателен.
Drive Power Cycle Count — количество полных циклов включения-выключения диска. По этому и предыдущему атрибуту можно оценить, например, сколько использовался диск до покупки.
Temperatue — Здесь хранятся показания встроенного термодатчика. Температура имеет огромное влияние на срок службы диска (даже если она находится в допустимых пределах). Вернее имеет влияние не на срок службы диска а на частоту возникновения некоторых типов ошибок, которые влияют на срок службы.
Current Pending Sector Count — Число секторов, являющихся кандидатами на замену. Они не были еще определенны как плохие, но считывание их отличается от чтения стабильного сектора, так называемые подозрительные или нестабильные сектора.
Uncorrectable Sector Count — число ошибок при обращении к сектору, которые не были скорректированы. Возможными причинами возникновения могут быть сбои механики или порча поверхности.
UDMA CRC Error Rate — число ошибок, возникающих при передаче данных по внешнему интерфейсу. Могут быть вызваны некачественными кабелями, нештатными режимами работы.
Write Error Rate — показывает частоту ошибок происходящих при записи на диск. Может служить показателем качества поверхности и механики накопителя.
P.S Так же можно проверит хард на чтение всего диска. dd if=/dev/DEVICE of=/dev/null bs=64k где DEVICE — имя вашего диска в /var/log/messages будут ошибки, если что-то не так.
4883925+1 records in 4883925+1 records out 320072933376 bytes transferred in 18203.830190 secs (17582725 bytes/sec)
Ну вроде как все прочиталось и без ошибок.