Руководство по утилите smartctl в smartmontools для Linux
Введение
smartctl – это утилита командной строки, входящая в состав пакета smartmontools, который предоставляет инструменты для мониторинга и управления состоянием устройств хранения данных, таких как жесткие диски и SSD. Она позволяет пользователям проверять состояние атрибутов технологии самоконтроля, анализа и отчетности (SMART) на дисках, что помогает обнаружить ранние признаки отказа диска. В этом руководстве вы узнаете об установке, базовом использовании и распространенных командах smartctl для пользователейLinux .
Что такое SMART?
SMART (Self-Monitoring, Analysis, and Reporting Technology) – это функция, встроенная в большинство современных жестких дисков и SSD, которая отслеживает различные атрибуты, такие как температура, ошибки чтения и время раскрутки. Эти атрибуты могут дать представление о здоровье и долговечности диска, позволяя пользователям предсказать потенциальные сбои и принять меры, например создать резервную копию данных или заменить диск до того, как произойдет катастрофический сбой.
Установка smartmontools
Прежде чем использовать smartctl, необходимо установить пакет smartmontools. Большинство дистрибутивов Linux имеют этот пакет в своих репозиториях. Для его установки используйте соответствующую команду для вашего дистрибутива:
- Debian/Ubuntu:
sudo apt-get update
sudo apt-get install smartmontools
- CentOS/RHEL:
sudo yum install smartmontools
- Fedora:
sudo dnf install smartmontools
- Arch Linux:
sudo pacman -S smartmontools
После установки вы можете начать использовать команду smartctl для проверки и управления устройствами хранения данных.
Проверка состояния диска с помощью smartctl
smartctl – это универсальный инструмент, который можно использовать для выполнения различных задач, таких как проверка состояния диска, запуск тестов и отображение подробной информации о накопителях. Ниже приведены некоторые распространенные команды smartctl и их описания.
1. Просмотр основной информации о накопителе
Чтобы просмотреть основную информацию о накопителе, например номер модели, серийный номер и версию микропрограммы, используйте следующую команду:
sudo smartctl -i /dev/sdX
Замените
/dev/sdX
/dev/sda
/dev/sdb
2. Проверка общего состояния диска
Чтобы быстро проверить, здоров ли диск, используйте:
sudo smartctl -H /dev/sdX
Эта команда выведет простое сообщение “PASSED” или “FAILED”, указывающее, обнаружил ли диск какие-либо потенциальные проблемы. Это быстрый способ определить необходимость дальнейшего тестирования.
3. Отображение всех атрибутов SMART
Чтобы получить подробный список всех атрибутов SMART, которые отслеживает диск, используйте:
sudo smartctl -A /dev/sdX
Эта команда предоставляет подробную статистику, такую как температура, частота ошибок чтения и количество перераспределенных секторов. Вот некоторые ключевые атрибуты, на которые следует обратить внимание:
- Reallocated_Sector_Ct: Указывает количество плохих секторов, которые были перераспределены.
- Current_Pending_Sector: Количество нестабильных секторов, ожидающих перераспределения.
- Temperature_Celsius (Температура по Цельсию): Текущая температура диска.
Интерпретация этих атрибутов может дать представление о текущем состоянии диска.
4. Выполнение короткого самотестирования
smartctl позволяет запускать самотестирование непосредственно на накопителе для проверки потенциальных проблем. Короткий тест – это быстрая диагностика, которую можно выполнить с помощью следующей команды:
sudo smartctl -t short /dev/sdX
Этот тест занимает несколько минут и проверяет наличие основных ошибок чтения. После завершения теста вы можете просмотреть результаты с помощью:
sudo smartctl -l selftest /dev/sdX
5. Запуск длительного самотестирования
Для более тщательной проверки диска можно запустить длительный тест:
sudo smartctl -t long /dev/sdX
Длинный тест выполняет более полный анализ поверхности диска, но его выполнение может занять несколько часов, в зависимости от размера и скорости диска. Проверьте состояние текущего теста с помощью:
sudo smartctl -c /dev/sdX
6. Включение или отключение SMART
SMART обычно включен по умолчанию на большинстве дисков, но в редких случаях он может быть отключен. Чтобы включить SMART на диске, выполните команду:
sudo smartctl -s on /dev/sdX
Чтобы отключить его, используйте:
sudo smartctl -s off /dev/sdX
Включать SMART рекомендуется, так как это позволит вам воспользоваться всеми возможностями мониторинга smartctl.
Интерпретация данных SMART
Атрибуты SMART, сообщаемые
smartctl
- Raw_Read_Error_Rate: Высокие значения могут указывать на проблемы со способностью диска точно считывать данные.
- Reallocated_Sector_Ct: Ненулевое значение может означать, что на диске начали появляться плохие сектора. Если это число продолжает расти, это может свидетельствовать о неисправности диска.
- Power_On_Hours (часы включения): Общее количество часов, в течение которых диск был включен. Это может дать представление о возрасте диска.
- Temperature_Celsius (температура по Цельсию): Высокая температура (выше 60 °C) может сократить срок службы диска. Лучше всего поддерживать температуру в диапазоне 30-40°C.
Автоматический мониторинг состояния SMART
Чтобы отслеживать состояние накопителя с течением времени, можно настроить smartd, фоновый демон, входящий в состав smartmontools. Он может автоматически запускать тесты и уведомлять вас по электронной почте, если диск начинает подавать признаки сбоя.
Отредактируйте файл конфигурации, расположенный по адресу /etc/smartd.conf, чтобы указать, какие диски нужно отслеживать и как часто проводить тесты. Затем вы можете включить и запустить службу smartd с помощью:
sudo systemctl enable smartd
sudo systemctl start smartd
Заключение
smartctl – это мощная утилита для мониторинга и поддержки работоспособности устройств хранения данных в Linux. Используя команды, описанные в этом руководстве, вы можете активно проверять свои диски на наличие потенциальных проблем, выполнять диагностические тесты и анализировать подробные данные SMART. Регулярное использование smartctl поможет предотвратить потерю данных за счет раннего выявления неисправных дисков, что даст вам время для резервного копирования важных данных и замены неисправного оборудования.
С помощью smartctl вы получаете ценную информацию о состоянии ваших дисков, обеспечивая долговечность и надежность вашей инфраструктуры хранения данных в Linux.