138 lines
20 KiB
Markdown
138 lines
20 KiB
Markdown
|
---
|
|||
|
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., а не на полном тесте. Это означает, что, хотя ключевые атрибуты могут выглядеть нормально, всегда существует вероятность наличия других, менее очевидных проблем, которые не были учтены в этой базовой проверке.
|
|||
|
|