Loading AI tools
Из Википедии, свободной энциклопедии
S.M.A.R.T. (от англ. self-monitoring, analysis and reporting technology — технология самоконтроля, анализа и отчётности) — технология оценки состояния жёсткого диска встроенной аппаратурой самодиагностики, а также механизм предсказания времени выхода его из строя. Технология S.M.A.R.T. является частью протоколов ATA и SATA.
Современные SSD накопители с SATA интерфейсом также поддерживают S.M.A.R.T. Однако широко распространённые флеш-накопители USB (прост. «флешки») обычно не поддерживают S.M.A.R.T., поскольку USB Mass Storage device class[англ.] основан на другом протоколе, SCSI, который не содержит аналогичной S.M.A.R.T. функциональности. Существует небольшое количество флеш-накопителей, сделанных на основе SATA контроллеров и переходников SATA-USB, работающих по спецификации SAT (SCSI-ATA Translation)[англ.]. Некоторые из таких переходников поддерживают трансляцию данных S.M.A.R.T.
Первый жёсткий диск, обладающий системой самодиагностики, был представлен в 1992 году фирмой IBM в дисковых массивах IBM 9337 для серверов AS/400, использующих IBM 0662 SCSI-2 диски. Технология была названа Predictive Failure Analysis (PFA). Измерялось несколько ключевых параметров, их оценка производилась непосредственно контроллером диска. Результат был ограничен лишь одним битом: либо всё в порядке, либо диск может в скором времени выйти из строя.
Позже компаниями Compaq, Seagate, Quantum и Conner была разработана другая технология, названная IntelliSafe. В ней был общий протокол выдачи информации о состоянии жёсткого диска, но измеряемые параметры и их пороги каждая компания определяла самостоятельно.
В начале 1995 года Compaq предложила стандартизировать технологию. Компании IBM, Seagate, Quantum, Conner и Western Digital (последняя на тот момент ещё не имела системы отслеживания параметров жёсткого диска) поддержали эту идею. За основу была взята технология IntelliSafe. Совместно разработанный стандарт назвали S.M.A.R.T.
Стандарт S.M.A.R.T. I предусматривал мониторинг основных параметров и запускался только после команды.
В разработке S.M.A.R.T. II участвовала Hitachi, предложившая методику полной самодиагностики накопителя (extended self-test), также появилась функция журналирования ошибок.
В S.M.A.R.T. III появилась функция обнаружения дефектов поверхности и возможность их восстановления «прозрачно» для пользователя.
S.M.A.R.T. производит наблюдение за основными характеристиками накопителя, каждая из которых получает оценку. Характеристики можно разбить на две группы:
Данные хранятся в шестнадцатеричном виде, называемом raw value («сырые значения»), а затем пересчитываются в value — значение, символизирующее надёжность относительно некоторого эталонного значения. Обычно value располагается в диапазоне от 0 до 100.
Высокая оценка говорит об отсутствии изменений данного параметра или медленном его ухудшении. Низкая — о возможном сбое в скором времени.
Значение, меньшее, чем минимальное, при котором производителем гарантируется безотказная работа накопителя, означает выход узла из строя.
Технология S.M.A.R.T. позволяет осуществлять:
Следует заметить, что технология S.M.A.R.T. позволяет предсказывать выход устройства из строя в результате механических неисправностей, что составляет около 60 % причин[1] поломки жёсткого диска. Предсказать последствия скачка напряжения или механического удара S.M.A.R.T. не способна.
Следует отметить, что накопители не могут самостоятельно сообщать о своём состоянии посредством технологии SMART, однако для этого существуют специальные программы. Таким образом, использование технологии S.M.A.R.T. невозможно без наличия следующих двух составляющих:
Программы, отображающие состояние S.M.A.R.T.-атрибутов, работают по следующему алгоритму:
Таблица известных атрибутов S.M.A.R.T. выглядит следующим образом:
![]() |
Большее значение параметра лучше |
---|---|
![]() |
Меньшее значение параметра лучше |
Критический параметр — красный фон строки | Индикатор возможной скорой поломки устройства |
№ | Hex | Имя атрибута | Лучше если… | Описание |
---|---|---|---|---|
01 | 01 | Raw Read Error Rate | ![]() | Частота ошибок при чтении данных с диска, происхождение которых обусловлено аппаратной частью диска. Для всех дисков Seagate, Samsung (семейства F1 и более новые) и Fujitsu 2,5″ это — число внутренних коррекций данных, проведённых до выдачи в интерфейс, — следовательно, на пугающе огромные цифры можно реагировать спокойно[2][3]. |
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-значение, тем хуже состояние поверхности дисков. Поле raw value содержит общее количество переназначенных секторов. Рост raw-значения этого атрибута может свидетельствовать об ухудшении состояния поверхностей «блинов» диска. |
06 | 06 | Read Channel Margin | Запас канала чтения. Назначение этого атрибута не документировано. В современных накопителях не используется. | |
07 | 07 | Seek Error Rate | ![]() | Частота ошибок при позиционировании блока магнитных головок. Чем их больше, тем хуже состояние механики и/или поверхности жёсткого диска. Также на значение параметра может повлиять перегрев и внешние вибрации (например, от соседних дисков в корзине). |
08 | 08 | Seek Time Performance | ![]() | Средняя производительность операции позиционирования магнитными головками. Если значение атрибута уменьшается (замедление позиционирования), то велика вероятность проблем с механической частью привода головок. |
09 | 09 | Power-on Time Count (Power-On Hours) | ![]() | Число часов (минут, секунд — в зависимости от производителя), проведённых во включенном состоянии. В качестве порогового значения для него выбирается паспортное время наработки на отказ (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 | ![]() | Число ошибок при чтении по вине программного обеспечения, которые не поддались исправлению. Все ошибки имеют немеханическую природу и указывают лишь на неправильную разметку/взаимодействие с диском программ или операционной системы. |
100 | 64 | Erase/Program Cycles (для SSD) | Общее количество циклов стирания/программирования для всей флэш-памяти за всё время ее существования. Твердотельный накопитель имеет ограничение на количество записей в него. Точные значения (ресурс) зависят от установленных микросхем флэш-памяти. В накопителях Kingston — объём стёртого в гигабайтах[4]. | |
103 | 67 | Translation Table Rebuild (для SSD) | Количество событий, когда внутренние таблицы адресов блоков были повреждены и впоследствии восстановлены. Raw-значение этого атрибута указывает фактическое количество событий. | |
170 | AA | Reserved Block Count (для SSD) | Состояние пула резервных блоков. Значение атрибута показывает процент оставшегося пула. Иногда raw-значение содержит фактическое количество использованных резервных блоков. 170 атрибут связан с атрибутом 5, числом использованных резервных блоков[4]. | |
171 | AB | Program Fail Count (для SSD) | Число попыток, когда запись во флэш-память не удалась. Raw-значение показывает фактическое количество отказов. Процесс записи технически называется «программирование флэш-памяти» — отсюда и название атрибута. Когда флэш-память изношена, она больше не может быть записана и становится доступной только для чтения. Значение обычно идентично атрибуту 181[4]. | |
172 | AC | Erase Fail Count (для SSD) | Количество сбоев операции стирания на флэш-памяти. Raw-значение показывает фактическое количество отказов. Полный цикл записи флэш-памяти состоит из двух этапов. Сначала необходимо удалить память, а затем данные должны быть записаны («запрограммированы») в память. Когда флэш-память изношена, она больше не может быть записана и становится доступной только для чтения. Идентичен атрибуту 182[4]. | |
173 | AD | Wear Leveller Worst Case Erase Count (для SSD) | Максимальное количество операций стирания, выполняемых для одного блока флэш-памяти. | |
174 | AE | Unexpected Power Loss (для SSD) | Число неожиданных отключений питания, когда питание было потеряно до получения команды на отключение диска. На жестком диске срок службы при таких отключениях намного меньше, чем при обычном отключении. На SSD существует риск потери внутренней таблицы состояний при неожиданном завершении работы. | |
175 | AF | Program Fail Count (для SSD) | Число попыток, когда запись во флэш-память не удалась. Raw-значение показывает фактическое количество отказов. Процесс записи технически называется «программирование флэш-памяти», отсюда и название атрибута. Когда флэш-память изношена, она больше не может быть записана и становится доступной только для чтения. | |
176 | B0 | Erase Fail Count (для SSD) | Количество сбоев операции стирания на флэш-памяти. Raw-значение показывает фактическое количество отказов. Полный цикл записи флэш-памяти состоит из двух этапов. Сначала необходимо удалить память, а затем данные должны быть записаны («запрограммированы») в память. Когда флэш-память изношена, она больше не может быть записана и становится доступной только для чтения. | |
177 | B1 | Wear Leveling Count (для SSD) Wear Range Delta | В зависимости от производителя, максимальное количество операций стирания, выполняемых для одного блока флэш-памяти[источник не указан 1386 дней] или разница между максималоьно изношенными (больше всего раз записанными) и минимально изношенными (записанными наименьшее число раз) блоками[4]. | |
178 | B2 | Used Reserved Block Count (для SSD) | Состояние пула резервных блоков. Значение атрибута показывает процент оставшегося пула. Raw-значение этого атрибута иногда содержит фактическое количество использованных резервных блоков. | |
179 | B3 | Used Reserved Block Count (для SSD) | Состояние пула резервных блоков. Значение атрибута показывает процент оставшегося пула. Raw-значение этого атрибута иногда содержит фактическое количество использованных резервных блоков. | |
180 | B4 | Unused Reserved Block Count (для SSD) | Состояние пула резервных блоков. Значение атрибута показывает процент оставшегося пула. Raw-значение этого атрибута иногда содержит фактическое количество неиспользованных резервных блоков. | |
181 | B5 | Program Fail Count (для SSD) | Число попыток, когда запись во флэш-память не удалась. Raw-значение показывает фактическое количество отказов. | |
182 | B6 | Erase Fail Count (для SSD) | Количество сбоев операции стирания на флэш-памяти. Raw-значение показывает фактическое количество отказов. | |
183 | B7 | SATA Downshifts (для SSD) | Указывает, как часто требовалось снизить скорость передачи данных SATA (с 6 Гбит/с до 3 или 1,5 Гбит/с или с 3 Гбит/с до 1,5 Гбит/с) для успешной передачи данных. Если значение атрибута уменьшается, попробуйте заменить кабель SATA. | |
184 | B8 | End-to-End error | ![]() | Назначение зависит от производителя. У HP (часть технологии HP SMART IV) увеличивается в случае, когда после передачи данных через кэш-память чётность данных между хостом и жёстким диском не совпадает. У Kingston это количество ошибок чтения из флэш-памяти. |
187 | BB | Reported UNC Errors | ![]() | Количество ошибок, которое накопитель сообщил хосту (интерфейсу компьютера) при любых операциях, обычно это ошибки данных на диске, которые не исправлены средствами ECC[4]. |
188 | BC | Command Timeout | ![]() | Количество прерванных операций в связи с таймаутом HDD. Обычно это значение атрибута должно быть равно нулю, и, если значение гораздо выше нуля, то, скорее всего, имеются серьёзные проблемы с питанием или окислением контактов кабелей передачи данных. |
189 | BD | High Fly Writes | ![]() |
Cодержит количество зафиксированных случаев записи при высоте полета головки выше рассчитанной — скорее всего, из-за внешних воздействий: например, вибрации. |
190 | BE | Airflow Temperature (WDC) | ![]() | Температура воздуха внутри корпуса жёсткого диска. Для дисков Seagate рассчитывается по формуле 100-HDA temperature. Для дисков Western Digital — 125-HDA. |
191 | BF | G-sense error rate (Mechanical Shock) | ![]() | Количество ошибок, возникающих в результате ударных нагрузок. Атрибут хранит показания встроенного акселерометра, который фиксирует все удары, толчки, падения во время работы диска. |
192 | C0 | Power-off retract count | ![]() | Число циклов выключений или аварийных отказов (включений/выключений питания накопителя). |
193 | C1 | Load/Unload Cycle | ![]() | Количество циклов перемещения блока магнитных головок в парковочную зону/в рабочее положение. |
194 | C2 | HDA temperature | ![]() | Здесь хранятся показания встроенного термодатчика для механической части диска — «банки» (HDA — Head and Disk Assembly). Информация снимается со встроенного термодатчика, которым служит одна из магнитных головок — обычно нижняя в банке. В битовых полях атрибута фиксируются текущая, минимальная и максимальная температура. Не все программы, работающие со SMART, правильно разбирают эти поля, так что к их показаниям стоит относиться критически. В SSD это температура внутри корпуса SSD или температура печатной платы[4]. |
195 | C3 | Hardware ECC Recovered или ECC On-the-Fly Error Count | ![]() | Число коррекции ошибок ECC, выполненных контроллером диска. На дисках с интерфейсом SATA значение нередко ухудшается при повышении частоты системной шины — SATA очень чувствителен к «разгону».
|
196 | C4 | Reallocation Event Count | ![]() | Число операций переназначения. В поле «raw value» атрибута хранится общее число попыток переноса информации с переназначенных секторов в резервную область. Учитываются как успешные, так и неуспешные попытки. |
197 | C5 | Current Pending Sector Count | ![]() | Число секторов, являющихся кандидатами на замену. Они ещё не были определены как плохие, но считывание с них отличается от чтения стабильного сектора — это так называемые подозрительные, или нестабильные сектора. В случае успешного последующего прочтения сектора он исключается из числа кандидатов. В случае повторных ошибочных чтений накопитель пытается восстановить его и выполняет операцию переназначения (remapping). Рост значения этого атрибута может свидетельствовать о физической деградации жёсткого диска. |
198 | C6 | Uncorrectable Sector Count | ![]() | Число некорректируемых (средствами диска) секторов. В случае увеличения числа ошибок велика вероятность критических дефектов поверхности и/или механики накопителя. |
199 | C7 | UltraDMA CRC Error Count, SATA R-Errors Error Count | ![]() | Для HDD с интерфейсом UltraDMA — число ошибок, возникающих при передаче данных по внешнему интерфейсу в режиме UltraDMA (нарушения целостности пакетов и т. п.). Рост этого атрибута свидетельствует о плохом (мятом, перекрученном) кабеле и плохих контактах. Также подобные ошибки появляются при разгоне шины PCI, сбоях питания, сильных электромагнитных наводках, а иногда и по вине драйвера. Возможно, причина в некачественном шлейфе. Для исправления попробуйте использовать SATA-шлейф без защёлок, имеющий плотное соединение с контактами диска. Для HDD с интерфесом SATA и для SSD — число ошибок при приёму и передаче данных по интерфейсу[4]. |
200 | C8 | Write Error Rate / Multi-Zone Error Rate | ![]() | Показывает общее количество ошибок, происходящих при записи сектора. Показывает общее число ошибок записи на диск. Может служить показателем качества поверхности и механики накопителя. |
201 | C9 | Soft read error rate, Uncorrectable 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, Soft ECC Correction Rate | ![]() | Количество ошибок ECC, скорректированных программно. |
205 | CD | Thermal asperity rate (TAR) | ![]() | Number of thermal asperity errors. |
206 | CE | Flying height | Расстояние между головкой чтения-записи и поверхностью диска во включенном состоянии. | |
207 | CF | Spin high current | ![]() | Величина силы тока при раскрутке диска. |
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). | |
210 | D2 | Vibration During Write | ![]() |
Вибрация во время чтения |
211 | D3 | Vibration During Read | ![]() |
Вибрация во время записи |
212 | D4 | Shock During Write | ![]() |
Нанесён ли жесткий физический удар по жёсткому диску во время его работы |
220 | DC | Disk Shift | ![]() | Дистанция смещения блока дисков относительно шпинделя. В основном возникает из-за удара или падения. Единица измерения неизвестна. При увеличении атрибута диск быстро становится неработоспособным. |
221 | DD | G-Sense Error Rate (Mechanical Shock) | ![]() | Число ошибок, возникших из-за внешних нагрузок и ударов. Атрибут хранит показания встроенного датчика удара. |
222 | DE | Loaded Hours | Время, проведённое блоком магнитных головок между выгрузкой из парковочной области в рабочую область диска и загрузкой блока обратно в парковочную область. | |
223 | DF | Load/Unload Retry Count | Количество новых попыток выгрузок/загрузок блока магнитных головок в/из парковочной области после неудачной попытки. | |
224 | E0 | Load Friction | ![]() | Величина силы трения блока магнитных головок при его выгрузке из парковочной области. |
225 | E1 | Load Cycle Count | ![]() | Количество циклов перемещения блока магнитных головок в парковочную область. |
226 | E2 | Load 'In'-time | Время, за которое привод выгружает магнитные головки из парковочной области на рабочую поверхность диска. | |
227 | E3 | Torque Amplification Count | ![]() | Количество попыток скомпенсировать вращающий момент. |
228 | E4 | Power-Off Retract Cycle | ![]() | Количество повторов автоматической парковки блока магнитных головок в результате выключения питания. |
230 | E6 | GMR Head Amplitude, Drive Life Protection Status | Зависит от производителя. Амплитуда «дрожания» (расстояние повторяющегося перемещения блока магнитных головок). У Kingston — степень использования носителя, состояние защиты его жизненного цикла[4]. | |
231 | E7 | Temperature, SSD Life Left | Для HDD — температура жёсткого диска. Для SSD — остаток жизненного цикла, приблизительное число оставшихся циклов или возможного объёма записи[4]. | |
232 | E8 | Available Reserved Space (SSD) | Зависит от производителя. Для SSD Kingston — количество оставшихся резервных служебных блоков. Исходно (в новом накопителе) равно числу Reserve Block Count. Для некоторых накопителей — значение атрибута 170, выраженное в гигабайтах[4]. | |
234 | EA | Количество неисправимых ошибок ECC | ![]() | |
235 | EB | Power Fail Backup Health | Зависит от производителя. У некоторых SSD показывает возможность сохранить данные из кэша в микросхемы флэш после внезапного отключения питания[4]. | |
240 | F0 | Head flying hours | Общее время нахождения блока головок в рабочем положении в часах. | |
241 | F1 | Total LBAs Written, Lifetime Writes from Host System | У HDD — полное число записанных секторов. У SSD Kingston — объём записанного за всё время жизни накопителя, в гигабайтах[4]. | |
242 | F2 | Total LBAs Read, Lifetime Reads to Host System | У HDD — полное число прочитанных секторов. У SSD Kingston — объём прочитаного из микросхем накопителя за всё время его жизни, в гигабайтах[4]. | |
250 | FA | Read error retry rate | ![]() | Число ошибок во время чтения жёсткого диска. |
254 | FE | Free Fall Protection | Счётчик зафиксированных событий "свободного падения". |
Жёсткие диски с поддержкой SMART версии 2 и старше предлагают ряд различных тестов:[5][6][7]
Журнал тестов SMART может содержать результаты только 21 последних тестов и доступен только для чтения. Иными словами, сбросить его штатными средствами невозможно. Журнал представляет собой таблицу из следующих колонок: порядковый номер теста, тип теста, результат теста, сколько процентов осталось до завершения, время жизни диска, LBA.[11]
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.