digital-garden/_inbox/Диагностика HDD c использованием S.M.A.R.T..md

138 lines
20 KiB
Markdown
Raw Normal View History

2024-06-13 21:01:37 +03:00
---
aliases:
- smartctl
- Self-Monitoring, Analysis and Reporting Technology
tags:
- зрелость/🌱
date:
- - 2024-03-08
zero-link:
- "[[00 DevOps]]"
parents:
linked:
---
`Smartctl` — это ключевой инструмент из набора smartmontools, предназначенный для тщательного мониторинга здоровья ваших HDD и SSD.
> [!INFO] lsblk
> Чтобы узнать, какой именно диск вы хотите проверить, используйте `lsblk` или `fdisk -l`, что позволит вам увидеть все подключенные диски и их разделы.
С помощью `smartctl` можно легко проверить, поддерживает ли ваш диск S.M.A.R.T.:
```bash
sudo smartctl -i /dev/sda
```
> [!WARNING]
> Не забудьте заменить `/dev/sda` на актуальный путь к вашему диску.
Если обнаружится, что S.M.A.R.T. отключён, его можно активировать следующей командой:
```bash
sudo smartctl -s on /dev/sda
```
## Основные команды
Просмотр общей информации о диске:
```bash
sudo smartctl -i /dev/sda
```
Запуск и отображение результатов самодиагностики
```bash
sudo smartctl -H /dev/sda
```
Команда `-H` предоставит "здоровье" диска в упрощенном виде, позволяя быстро оценить его состояние. Полезно для ежедневной проверки состояния дисков. Покажет только атрибуты на которые стоит обратить внимание.
Просмотр подробных данных S.M.A.R.T
```bash
sudo smartctl -A /dev/sda
```
Это одна из самых ценных команд, предоставляющая детальный анализ атрибутов S.M.A.R.T. Каждый атрибут имеет определенное значение, которое помогает предсказать вероятность отказа.
### Тестирование диска
Короткий тест на 3-5 минут. Подходит для быстрых проверок
```bash
sudo smartctl -t short /dev/sda
```
или длительный тест более глубоко анализирует состояние диска. Может занять от нескольких часов до суток
```bash
sudo smartctl -t long /dev/sda
```
**Просмотр результатов тестирования:**
```bash
sudo smartctl -l selftest /dev/sda
```
После проведения теста используйте эту команду, чтобы увидеть детальный отчет о его результатах. Это поможет вам лучше понять, какие действия необходимо предпринять для устранения возможных проблем.
## Анализ результатов
- **START OF INFORMATION SECTION.** Описывает основные характеристики диска, включая производителя, модель, серийный номер, версию прошивки, емкость, размеры секторов, скорость вращения, форм-фактор, и поддержку TRIM.
- Параметр **SMART overall-health self-assessment test result** - показывает тест самооценки общего состояния. Значение **PASSED** сообщает об успешно пройденном тесте, что указывает на то, что в настоящее время нет критических проблем, обнаруженных системой S.M.A.R.T.
- **General SMART Values** Этот раздел включает данные о различных атрибутах, отслеживаемых S.M.A.R.T., таких как скорость чтения ошибок, время разгонов, количество запусков/остановов, количество реаллоцированных секторов, скорость ошибок поиска и др. Наиболее важные для внимания атрибуты:
- **Power_On_Hours** показывает общее количество часов, в течение которых диск был включен. Для вашего диска это 11963 часа.
- **Reallocated_Sector_Ct** показывает количество секторов, которые были выделены повторно из-за неисправностей. Чем меньше значение, тем лучше.
- **Temperature_Celsius** показывает текущую температуру диска.
- **Load_Cycle_Count** отражает количество циклов загрузки/выгрузки головки диска, что может быть индикатором износа для дисков, используемых в ноутбуках или внешних приводах.
- Ниже ижет **Журнал ошибок S.M.A.R.T.**: Содержит записи о последних ошибках, зарегистрированных диском. Наличие ошибок не всегда указывает на неминуемый отказ, но они могут быть индикатором потенциальных проблем.
- **VALUE**: Текущее нормализованное значение атрибута, которое уменьшается от максимального значения (чаще всего 100 или 200) к минимальному.
- **WORST**: Самое низкое нормализованное значение (`VALUE`), которое атрибут когда-либо принимал. Значение 064 указывает на то, что в какой-то момент состояние атрибута было хуже, чем сейчас.
- **THRESH**: Пороговое значение для атрибута. Если `VALUE` упадет ниже этого уровня, то считается, что диск близок к отказу.
- **TYPE**: Тип атрибута.
- `Pre-fail` указывает на то, что атрибут предназначен для предсказания отказа диска до того, как он произойдет.
- `Old_age`: Изменение этих параметров указывает на естественный износ устройства.
- **UPDATED**: Указывает, когда атрибут обновляется.
- **Always**: Значение атрибута обновляется постоянно, как в процессе нормальной работы диска, так и при проведении тестов S.M.A.R.T.
- **Offline**: Значение атрибута обновляется только во время выполнения специальных оффлайн операций или самотестирования, которые могут быть инициированы пользователем или автоматически по расписанию.
- **WHEN_FAILED**: Указывает, произошел ли отказ по этому атрибуту. Знак `-` означает, что отказа не было.
- **RAW_VALUE**: Сырое значение атрибута, которое представляет собой счетчик или абсолютное значение, связанное с атрибутом. Это значение часто является необработанным и может быть интерпретировано по-разному в зависимости от производителя диска.
**Параметры S.M.A.R.T:**
- **Raw_Read_Error_Rate**: Количество ошибок чтения данных с пластин диска. Высокие значения могут указывать на проблемы с поверхностью диска или головками чтения/записи.
- **Spin_Up_Time**: Время, необходимое диску для разгона от остановленного состояния до рабочей скорости. Увеличение этого времени может указывать на ухудшение состояния механики диска.
- **Start_Stop_Count**: Количество циклов запуска/остановки вращения пластин диска. Этот параметр важен для дисков, используемых в мобильных устройствах или внешних накопителях, поскольку частые старты и стопы могут ускорить износ.
- **Reallocated_Sector_Ct**: Количество секторов, которые были выделены повторно из-за ошибок чтения/записи. Увеличение этого числа может указывать на ухудшение состояния поверхности диска.
- **Seek_Error_Rate**: Частота ошибок позиционирования головок чтения/записи. Это может указывать на проблемы с механикой диска или его электроникой.
- **Power_On_Hours**: Общее количество часов, в течение которых диск был включен. Этот параметр позволяет оценить износ диска по времени его эксплуатации.
- **Spin_Retry_Count**: Количество попыток диска разогнаться до рабочей скорости. Увеличение этого значения может указывать на проблемы с мотором или подшипниками диска.
- **Power_Cycle_Count**: Количество циклов включения/выключения питания диска. Частые включения и выключения могут способствовать быстрому износу.
- **End-to-End_Error**: Ошибки при передаче данных между кэшем диска и его пластинами. Указывает на проблемы с внутренней передачей данных.
- **Reported_Uncorrect**: Количество некорректируемых ошибок, сообщенных диском. Указывает на серьезные проблемы с чтением данных.
- **Command_Timeout**: Количество команд, которые не были выполнены в установленное время. Может указывать на проблемы с электроникой диска или его взаимодействием с контроллером.
- **High_Fly_Writes**: Счетчик "высоких" записей, когда головка записи находится выше обычного положения над поверхностью диска. Может указывать на проблемы с механикой головок.
- **Airflow_Temperature_Cel**: Температура воздушного потока внутри диска. Высокие температуры могут ускорять износ.
- **G-Sense_Error_Rate**: Количество ошибок, вызванных внешними ударами или вибрациями. Важен для дисков в мобильных устройствах или в условиях повышенной вибрации.
- **Power-Off_Retract_Count**: Количество аварийных парковок головок чтения/записи при отключении питания. Увеличение этого значения может быть вызвано проблемами с питанием или неправильным отключением устройства.
- **Load_Cycle_Count**: Количество циклов парковки головок чтения/записи. Частые парковки могут ускорить износ головок и механики диска.
- **Temperature_Celsius**: Текущая температура диска. Высокие температуры могут сократить срок службы диска.
- **Current_Pending_Sector**: Количество секторов, ожидающих перевыделения из-за неудачных попыток чтения/записи. Увеличение этого значения может указывать на проблемы с поверхностью диска.
- **Offline_Uncorrectable**: Количество секторов, ошибки в которых не были исправлены во время последней оффлайн проверки. Указывает на серьезные проблемы с поверхностью диска.
- **UDMA_CRC_Error_Count**: Количество ошибок циклического избыточного кода (CRC) при передаче данных в режиме Ultra DMA. Может указывать на проблемы с кабелем данных или контроллером.
- **Head_Flying_Hours**: Общее количество часов работы головок чтения/записи над поверхностью диска. Помогает оценить износ головок и механики диска.
- **Total_LBAs_Written**: Общее количество логических блоков адреса (LBA), записанных на диск. Помогает оценить интенсивность использования диска.
- **Total_LBAs_Read**: Общее количество логических блоков адреса (LBA), считанных с диска. Также помогает оценить интенсивность использования.
- **Free_Fall_Sensor**: Срабатывания датчика свободного падения (если присутствует). Указывает на риск повреждения диска из-за ударов или падений.
- **Reallocated_Event_Count**: Этот параметр отслеживает количество попыток диска перевыделить сектора. Когда диск обнаруживает, что сектор поврежден или испытывает проблемы с чтением/записью, он пытается перенести данные из этого сектора в специально зарезервированный область диска, известную как резервный сектор. Каждый раз, когда это происходит, увеличивается значение `Reallocated_Event_Count`.
- **Multi_Zone_Error_Rate**. Этот атрибут относится к скорости ошибок чтения/записи в разных зонах диска. Он может указывать на количество ошибок, возникших при попытке диска прочитать данные из различных зон поверхности диска. Разные производители по-разному интерпретируют и используют этот параметр, и в некоторых случаях он может быть связан с `Seek_Error_Rate`.
- **Calibration_Retry_Count**. Этот атрибут отслеживает количество попыток жесткого диска перекалибровать свои головки чтения/записи. Калибровка необходима для того, чтобы головки правильно позиционировались над треками диска для чтения или записи данных. Попытки калибровки могут быть вызваны различными причинами, включая нормальные операционные процессы, а также потенциальные проблемы с механикой диска.
## Как часто проверять
Частота проверки состояния жесткого диска зависит от нескольких факторов, включая критичность данных, интенсивность использования диска, и условия эксплуатации. Вот несколько общих рекомендаций:
- **Для критически важных систем**: Если диск используется в критически важных системах, где потеря данных может привести к серьезным последствиям, рекомендуется проверять диск как минимум раз в месяц. Это поможет своевременно выявить потенциальные проблемы и предотвратить потерю данных
- **Для рабочих станций и домашних компьютеров**: Для обычных пользователей, использующих диск для работы или личных нужд, достаточно будет проверять состояние диска раз в 3-6 месяцев.
- **Для дисков, используемых в условиях повышенной нагрузки**: Если диск активно используется для интенсивных операций чтения/записи, например, в серверах или системах видеонаблюдения, рекомендуется проводить проверку ежемесячно.
- **При наличии признаков проблем**: Если вы замечаете признаки, указывающие на возможные проблемы с диском (например, замедление работы, ошибки при чтении данных, странные звуки), следует немедленно проверить состояние диска с помощью инструментов S.M.A.R.T. или других диагностических утилит.
- **После сбоев системы или непредвиденных отключений питания**: Такие события могут привести к повреждению данных или физическому износу диска, поэтому после них рекомендуется провести полную проверку диска.
## Заметки
- [Состояние HDD](Состояние%20HDD.numbers)
Сообщение `SMART Status not supported: Incomplete response, ATA output registers missing` указывает на то, что утилита для чтения данных S.M.A.R.T. не смогла получить полный ответ от диска.
Предупреждение `Warning: This result is based on an Attribute check.` указывает на то, что положительный результат самодиагностики основан исключительно на проверке атрибутов S.M.A.R.T., а не на полном тесте. Это означает, что, хотя ключевые атрибуты могут выглядеть нормально, всегда существует вероятность наличия других, менее очевидных проблем, которые не были учтены в этой базовой проверке.