Сколько осталось жить диску и не пора ли его заменить?
Такой вопрос поднимается у всех администраторов и хорошо если им периодически задаваться, поскольку стоимость жесткого диска ничтожна, по сравнению со стоимостью информации на нем.
Smart (Self Monitoring Analysing and Reporting Technology) - это технология оценки состояния жестких дисков встроенной аппаратурой самодиагностики, а так же механизм предсказания времени выхода из строя жесткого диска.
Какие проблемы позволяет выявить эта технология:
- Проблемы блока магнитных головок
- Повреждения дисков (физичесские повреждения, логичесские ошибки и т.п.)
- Проблемы механики (Привода, системы позиционирования)
- Проблемы электронной части (платы)
- Температура
Первым делом нам необходимо установить инструмент smartmontools в Debian:
- aptitude install smartmontools
Для начала узнаем поддерживает наш диск SMART или нет:
- smartctl -i /dev/sda
Если SMART выключен, его необходимо включить:
- smartctl -s /dev/sda
Для получения всей доступной информации о диске необходимо запросить:
- smartctl --all /dev/sda
Если нас интересуют только параметры диска:
- smartctl -i /dev/sda
Поскольку нашей целью получить информацию о состоянии, то нам понадобится в основном только атрибуты SMART:
- smartctl -A /dev/sda
Учитывая данные из таблицы SMART атрибутов , можно без труда произвести анализ состояния дисков.
Атрибуты SMART
Таблица известных атрибутов SMART выглядит следующим образом:
P.S. Выделенные атрибуты - требуют особого внимания - на них строится основное состояние жесткого диска.
№ | Hex | Имя атрибута | Лучше если… | Описание |
---|---|---|---|---|
01 | 01 | Raw Read Error Rate | Частота ошибок при чтении данных с диска, происхождение которых обусловлено аппаратной частью диска. Для всех дисков Seagate, Samsung (семейства F1 и более новые) и Fujitsu 2,5″ это — число внутренних коррекций данных, проведенных до выдачи в интерфейс, следовательно на пугающе огромные цифры можно реагировать спокойно. | |
02 | 02 | Throughput Performance | Общая производительность диска. Если значение атрибута уменьшается, то велика вероятность, что с диском есть проблемы. | |
03 | 03 | Spin-Up Time | Время раскрутки пакета дисков из состояния покоя до рабочей скорости. Растет при износе механики (повышенное трение в подшипнике и т.п.), также может свидетельствовать о некачественном питании (например, просадке напряжения при старте диска). | |
04 | 04 | Start/Stop Count | Полное число циклов запуск-остановка шпинделя. У дисков некоторых производителей (например, Seagate) — счётчик включения режима энергосбережения. В поле raw value хранится общее количество запусков/остановок диска. | |
05 | 05 | Reallocated Sectors Count | Число операций переназначения секторов. Когда диск обнаруживает ошибку чтения/записи, он помечает сектор «переназначенным» и переносит данные в специально отведённую резервную область. Вот почему на современных жёстких дисках нельзя увидеть bad-блоки — все они спрятаны в переназначенных секторах. Этот процесс называют remapping, а переназначенный сектор — remap. Чем больше значение, тем хуже состояние поверхности дисков. Поле raw value содержит общее количество переназначенных секторов. Рост значения этого атрибута может свидетельствовать об ухудшении состояния поверхности блинов диска. | |
06 | 06 | Read Channel Margin | Запас канала чтения. Назначение этого атрибута не документировано. В современных накопителях не используется. | |
07 | 07 | Seek Error Rate | Частота ошибок при позиционировании блока магнитных головок. Чем их больше, тем хуже состояние механики и/или поверхности жёсткого диска. Также на значение параметра может повлиять перегрев и внешние вибрации (например, от соседних дисков в корзине). | |
08 | 08 | Seek Time Performance | Средняя производительность операции позиционирования магнитными головками. Если значение атрибута уменьшается (замедление позиционирования), то велика вероятность проблем с механической частью привода головок. | |
09 | 09 | Power-On Hours (POH) | Число часов (минут, секунд — в зависимости от производителя), проведённых во включенном состоянии. В качестве порогового значения для него выбирается паспортное время наработки на отказ (MTBF — mean time between failure). | |
10 | 0A | Spin-Up Retry Count | Число повторных попыток раскрутки дисков до рабочей скорости в случае, если первая попытка была неудачной. Если значение атрибута увеличивается, то велика вероятность неполадок с механической частью. | |
11 | 0B | Recalibration Retries | Количество повторов запросов рекалибровки в случае, если первая попытка была неудачной. Если значение атрибута увеличивается, то велика вероятность проблем с механической частью. | |
12 | 0C | Device Power Cycle Count | Количество полных циклов включения-выключения диска. | |
13 | 0D | Soft Read Error Rate | Число ошибок при чтении, по вине программного обеспечения, которые не поддались исправлению. Все ошибки имеют не механическую природу и указывают лишь на неправильную размётку/взаимодействие с диском программ или операционной системы. | |
184 | B8 | End-to-End error | Данный атрибут — часть технологии HP SMART IV, это означает, что после передачи через кэш памяти буфера данных паритет данных между хостом и жестким диском не совпадают.[2] | |
187 | BB | Reported UNC Errors | Ошибки, которые не могли быть восстановлены, используя методы устранения ошибки аппаратными средствами. | |
190 | BE | Airflow Temperature (WDC) | Температура воздуха внутри корпуса жёсткого диска. Для дисков Seagate рассчитывается по формуле (100 — HDA temperature). Для дисков Western Digital - (125- HDA). | |
191 | BF | G-sense error rate | Количество ошибок, возникающих в результате ударных нагрузок. Атрибут хранит показания встроенного акселерометра, который фиксирует все удары, толчки, падения и даже неаккуратную установку диска в корпус компьютера. | |
192 | C0 | Power-off retract count | Число циклов выключений или аварийных отказов (включений/выключений питания накопителя). | |
193 | C1 | Load/Unload Cycle | Количество циклов перемещения блока магнитных головок в парковочную зону / в рабочее положение. | |
194 | C2 | HDA temperature | Здесь хранятся показания встроенного термодатчика для механической части диска - банки (HDA — Hard Disk Assembly). Информация снимается со встроенного термодатчика, которым служит одна из магнитных головок, обычно нижняя в банке. В битовых полях атрибута фиксируются текущая, минимальная и максимальная температура. Не все программы, работающие со SMART, правильно разбирают эти поля, так что к их показаниям стоит относиться критично. | |
195 | C3 | Hardware ECC Recovered | Число коррекции ошибок аппаратной частью диска (чтение, позиционирование,передача по внешнему интерфейсу). На дисках с SATA-интерфейсом значение нередко ухудшается при повышении частоты системной шины — SATA очень чувствителен к разгону. | |
196 | C4 | Reallocation Event Count | Число операций переназначения. В поле «raw value» атрибута хранится общее число попыток переноса информации с переназначенных секторов в резервную область. Учитываются как успешные, так и неуспешные попытки. | |
197 | C5 | Current Pending Sector Count | Число секторов, являющихся кандидатами на замену. Они не были ещё определены как плохие, но считывание с них отличается от чтения стабильного сектора, это так называемые подозрительные или нестабильные сектора. В случае успешного последующего прочтения сектора он исключается из числа кандидатов. В случае повторных ошибочных чтений накопитель пытается восстановить его и выполняет операцию переназначения (remaping). Рост значения этого атрибута может свидетельствовать о физической деградации жёсткого диска. | |
198 | C6 | Uncorrectable Sector Count | Число неисправимых ошибок при обращении к сектору. {Возможно, имелось в виду «число некорректируемых (средствами диска) секторов», но никак не число самих ошибок!} В случае увеличения числа ошибок велика вероятность критических дефектов поверхности и/или механики накопителя. | |
199 | C7 | UltraDMA CRC Error Count | Число ошибок, возникающих при передаче данных по внешнему интерфейсу в режиме UltraDMA (нарушения целостности пакетов и т.п.). Рост этого атрибута свидетельствует о плохом (мятом, перекрученном) кабеле и плохих контактах. Также подобные ошибки появляются при разгоне шины PCI, сбоях питания, сильных электромагнитных наводках, а иногда и по вине драйвера. Возможно причина в некачественном шлейфе. Для исправления попробуйте использовать SATA шлейф без защёлок, имеющий плотное соединение с контактами диска. | |
200 | C8 | Write Error Rate / Multi-Zone Error Rate | Показывает общее количество ошибок, происходящих при записи сектора. Показывает общее число ошибок записи на диск. Может служить показателем качества поверхности и механики накопителя. | |
201 | C9 | Soft read error rate | Частота появления «программных» ошибок при чтении данных с диска. Данный параметр показывает частоту появления ошибок при операциях чтения с поверхности диска по вине программного обеспечения, а не аппаратной части накопителя. | |
202 | Ca | Data Address Mark errors | Number of Data Address Mark (DAM) errors (or) vendor-specific. | |
203 | CB | Run out cancel | Количество ошибок ECC. | |
204 | CC | Soft ECC correction | Количество ошибок ECC, скорректированных программным способом. | |
205 | CD | Thermal asperity rate (TAR) | Number of thermal asperity errors. | |
206 | CE | Flying height | Высота между головкой и поверхностью диска. | |
207 | CF | Spin high current | Amount of high current used to spin up the drive. | |
208 | D0 | Spin buzz | Number of buzz routines to spin up the drive. | |
209 | D1 | Offline seek performance | Drive’s seek performance during offline operations. | |
220 | DC | Disk Shift | Дистанция смещения блока дисков относительно шпинделя. В основном возникает из-за удара или падения. Единица измерения неизвестна. При увеличении атрибута диск быстро становится неработоспособным. | |
221 | DD | G-Sense Error Rate | Число ошибок, возникших из-за внешних нагрузок и ударов. Атрибут хранит показания встроенного датчика удара. | |
222 | DE | Loaded Hours | Время, проведённое блоком магнитных головок между выгрузкой из парковочной области в рабочую область диска и загрузкой блока обратно в парковочную область. | |
223 | DF | Load/Unload Retry Count | Количество новых попыток выгрузок/загрузок блока магнитных головок в/из парковочной области после неудачной попытки. | |
224 | E0 | Load Friction | Величина силы трения блока магнитных головок при его выгрузке из парковочной области. | |
225 | E1 | Load Cycle Count | Количество циклов перемещения блока магнитных головок в парковочную область. | |
226 | E2 | Load Load "In"-time | Время, за которое привод выгружает магнитные головки из парковочной области на рабочую поверхность диска. | |
227 | E3 | Torque Amplification Count | Количество попыток скомпенсировать вращающий момент. | |
228 | E4 | Power-Off Retract Cycle | Количество повторов автоматической парковки блока магнитных головок в результате выключения питания. | |
230 | E6 | GMR Head Amplitude | Амплитуда «дрожания» (расстояние повторяющегося перемещения блока магнитных головок). | |
231 | E7 | Temperature | Температура жёсткого диска. | |
240 | F0 | Head flying hours | Время позиционирования головки. | |
250 | FA | Read error retry rate | Число ошибок во время чтения жёсткого диска. |
Пример вывода smartctl --all /dev/sda:
- server:~# smartctl --all /dev/sda
- smartctl 5.40 2010-07-12 r3124 [i686-pc-linux-gnu] (local build)
- Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net
- === START OF INFORMATION SECTION ===
- Model Family: Western Digital RE3 Serial ATA family
- Device Model: WDC WD5002ABYS-01B1B0
- Serial Number: WD-WCASY4014638
- Firmware Version: 02.03B02
- User Capacity: 500 107 862 016 bytes
- Device is: In smartctl database [for details use: -P show]
- ATA Version is: 8
- ATA Standard is: Exact ATA specification draft version not indicated
- Local Time is: Sun Apr 29 15:18:16 2012 MSK
- SMART support is: Available - device has SMART capability.
- SMART support is: Enabled
- === START OF READ SMART DATA SECTION ===
- SMART overall-health self-assessment test result: PASSED
- General SMART Values:
- Offline data collection status: (0x84) Offline data collection activity
- was suspended by an interrupting command from host.
- Auto Offline Data Collection: Enabled.
- Self-test execution status: ( 0) The previous self-test routine completed
- without error or no self-test has ever
- been run.
- Total time to complete Offline
- data collection: (9480) seconds.
- Offline data collection
- capabilities: (0x7b) SMART execute Offline immediate.
- Auto Offline data collection on/off support.
- Suspend Offline collection upon new
- command.
- Offline surface scan supported.
- Self-test supported.
- Conveyance Self-test supported.
- Selective Self-test supported.
- SMART capabilities: (0x0003) Saves SMART data before entering
- power-saving mode.
- Supports SMART auto save timer.
- Error logging capability: (0x01) Error logging supported.
- General Purpose Logging supported.
- Short self-test routine
- recommended polling time: ( 2) minutes.
- Extended self-test routine
- recommended polling time: ( 112) minutes.
- Conveyance self-test routine
- recommended polling time: ( 5) minutes.
- SCT capabilities: (0x303f) SCT Status supported.
- SCT Error Recovery Control supported.
- SCT Feature Control supported.
- SCT Data Table supported.
- 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 0x002f 198 198 051 Pre-fail Always - 250919
- 3 Spin_Up_Time 0x0027 239 238 021 Pre-fail Always - 1033
- 4 Start_Stop_Count 0x0032 100 100 000 Old_age Always - 166
- 5 Reallocated_Sector_Ct 0x0033 200 200 140 Pre-fail Always - 0
- 7 Seek_Error_Rate 0x002e 200 200 000 Old_age Always - 0
- 9 Power_On_Hours 0x0032 064 064 000 Old_age Always - 26914
- 10 Spin_Retry_Count 0x0032 100 100 000 Old_age Always - 0
- 11 Calibration_Retry_Count 0x0032 100 100 000 Old_age Always - 0
- 12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 164
- 192 Power-Off_Retract_Count 0x0032 200 200 000 Old_age Always - 157
- 193 Load_Cycle_Count 0x0032 200 200 000 Old_age Always - 166
- 194 Temperature_Celsius 0x0022 114 099 000 Old_age Always - 33
- 196 Reallocated_Event_Count 0x0032 200 200 000 Old_age Always - 0
- 197 Current_Pending_Sector 0x0032 183 183 000 Old_age Always - 1465
- 198 Offline_Uncorrectable 0x0030 199 199 000 Old_age Offline - 89
- 199 UDMA_CRC_Error_Count 0x0032 200 200 000 Old_age Always - 0
- 200 Multi_Zone_Error_Rate 0x0008 200 199 000 Old_age Offline - 94
- SMART Error Log Version: 1
- No Errors Logged
- SMART Self-test log structure revision number 1
- Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error
- # 1 Extended offline Completed: read failure 60% 21177 37484977
- # 2 Short offline Completed: read failure 10% 21157 37484977
- # 3 Extended offline Aborted by host 90% 21156 -
- SMART Selective self-test log data structure revision number 1
- SPAN MIN_LBA MAX_LBA CURRENT_TEST_STATUS
- 1 0 0 Not_testing
- 2 0 0 Not_testing
- 3 0 0 Not_testing
- 4 0 0 Not_testing
- 5 0 0 Not_testing
- Selective self-test flags (0x0):
- After scanning selected spans, do NOT read-scan remainder of disk.
- If Selective self-test is pending on power-up, resume after 0 minute delay.
- server:~#
Атрибуты Атрибуты бывают критически важными (Pre-fail) и некритически важными (Old_age).