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