В настоящее время в репозитории пакетов Ubuntu 26.04 LTS доступен пакет smartmontools 7.5-2. Пакет включает в себя утилиту smartctl, которая считывает данные о состоянии дисков, и smartdфоновую службу, которая отслеживает выбранные изменения и может отправлять электронные письма. SMART означает технологию самодиагностики, анализа и отчетности. Перед настройкой оповещений по электронной почте сначала убедитесь, что Ubuntu может считывать данные SMART с каждого диска; сообщение не может быть отправлено для устройства, которое система не может отслеживать.
В этом руководстве описывается настройка монитора на одном рабочем столе Ubuntu и отправка тестового электронного письма перед тем, как полагаться на оповещения. Предполагается, что компьютер имеет работающий маршрут к SMTP-ретранслятору — службе, которая принимает исходящие электронные письма для доставки. Само по себе почтовое приложение для рабочего стола не предоставляет эту услугу.
Что может сообщить вам система SMART-оповещений?
SMART — это информация о состоянии и ошибках, сообщаемая накопителем. Она может выявлять предупреждающие состояния, такие как сбой проверки состояния, увеличение количества ошибок или определенные результаты самотестирования. Это система раннего предупреждения, а не гарантия того, что накопитель предскажет все сбои. Накопитель может перестать работать без полезного предупреждения, а результат «ПРОЙДЕНО» не доказывает, что все файлы читаемы. Сохраняйте отдельную резервную копию важных данных.
Значения также зависят от типа накопителя и прошивки. Жесткие диски SATA и SSD-накопители часто отображают таблицы атрибутов; накопители NVMe сообщают информацию о состоянии в другом формате. Не следует сравнивать необработанные значения атрибутов разных производителей или рассматривать один общий пороговый уровень как универсальный.
Что нужно подготовить перед настройкой?
- Учетная запись Ubuntu с правами администратора.
- Для установки необходимо включить репозитории пакетов и подключиться к интернету.
- Адрес, на который должны приходить оповещения.
- Указание на SMTP-ретранслятор, который вы имеете право использовать, например, аутентифицированный почтовый сервер провайдера или организации, с указанием хоста, порта, требований TLS и учетных данных.
- Перед запуском диагностики диска или внесением изменений в хранилище необходимо создать резервную копию данных.
Некоторые USB-корпуса, аппаратные RAID-контроллеры, виртуальные машины и сетевые хранилища не передают данные SMART на хост Ubuntu. Поэтому команда, работающая на напрямую подключенном диске, может завершиться ошибкой при подключении через корпус. Перед изменением параметров устройства определите тип подключения.
1. Найдите названия дисков и проверьте доступ SMART.
Составьте список устройств хранения данных и запросите у smartmontools, какие из них он может открыть:
lsblk -o NAME,TYPE,TRAN,MODEL,SIZE
sudo smartctl --scan-open
Пути к устройствам обычно выглядят так же, как /dev/sdaдля SATA-диска или /dev/nvme0NVMe-контроллера, но используйте путь, отображаемый на вашем компьютере. Проверьте каждое целевое устройство с помощью запроса состояния только для чтения:
sudo smartctl -a /dev/sda
Замените /dev/sdaна идентифицированное вами устройство. Для NVMe-накопителя замените указанный путь к контроллеру. Прочитайте вывод команды: он должен содержать информацию об идентификаторе и состоянии накопителя, а не сообщение о том, что SMART не поддерживается или устройство не может быть открыто. Если сканирование выдает устройство с требуемым типом, следуйте руководству по smartmontools для этого конкретного контроллера или моста, вместо того чтобы копировать -dпараметры другой системы.
Установите пакет мониторинга и вспомогательные инструменты:
sudo apt update
sudo apt install smartmontools mailutils
mailutilsПредоставляет программу командной строки, mailиспользуемую в качестве пути к почтовому серверу по умолчанию для smartd. Сама по себе она не является ретранслятором исходящей почты. Если в Ubuntu еще не настроен агент передачи почты, настройте его перед продолжением.
2. Настройте исходящую электронную почту перед изменением настроек SmartD.
Пакет Postfix в Ubuntu может пересылать исходящую почту через SMTP-провайдера. Настройте его как почтовый клиент, используя хост ретрансляции, аутентификацию, адрес отправителя, порт и параметры TLS, предоставленные вашим провайдером; не настраивайте рабочий стол как открытый ретранслятор. Ubuntu описывает настройку Postfix и ретранслятора в своем руководстве по серверу. Точные учетные данные и настройки различаются в зависимости от почтового провайдера, поэтому используйте текущие инструкции этого провайдера. Защитите любые сохраненные секреты от других локальных пользователей.
Перед использованием smartd отправьте тестовое сообщение из командной строки:
printf 'This is an Ubuntu SMART email test.\n' | mail -s 'SMART alert test' you@example.com
Замените адрес получателя в примере на свой собственный. Убедитесь, что сообщение доставлено, в том числе в папки «Спам» или «Нежелательная почта». Если этого не произошло, сначала устраните неполадки в работе почтового ретранслятора. Проверьте очередь почты с помощью команды mailqи изучите журналы Postfix с помощью команды journalctl -u postfix. Успешное выполнение локальной команды может означать только то, что сообщение было поставлено в очередь; настоящая проверка — это доставка в удаленный почтовый ящик.
3. Добавьте место назначения для интеллектуальных оповещений.
Откройте конфигурацию smartd от имени администратора:
sudoedit /etc/smartd.conf
Для компьютера, где сканирование устройств по умолчанию находит диски, используйте одну активную строку сканирования устройств, заменив примерный адрес. Если в файле уже есть активная DEVICESCANзапись, отредактируйте эту строку, а не добавляйте дубликат:
DEVICESCAN -a -m you@example.com -M test
DEVICESCANЗапрашивает у smartd обнаружение поддерживаемых устройств. -aВключает стандартный набор проверок состояния, журнала ошибок, самодиагностики и атрибутов. -mУстанавливает получателя электронной почты. -M testЗапрашивает одно тестовое электронное письмо при запуске демона. В руководстве по настройке smartd отмечается, что DEVICESCANзапись перехватывает конфигурацию сканирования, поэтому не добавляйте строки для каждого диска после нее. Если автоматическое обнаружение пропускает диск, используйте явные записи устройств на основе smartctl --scan-openвыходных данных и руководства.
Сохраните и закройте редактор. Если конфигурационный файл содержит конфиденциальную информацию, он должен быть доступен для чтения только администраторам. Получатель не является паролем, но учетные данные SMTP-ретранслятора ни в коем случае не должны размещаться в этом файле.
4. Начните мониторинг и подтвердите тестовое оповещение.
В Ubuntu этот пакет называется ` smartmontools.service.`. Включите и запустите его, затем проверьте его состояние:
sudo systemctl enable --now smartmontools.service
systemctl status smartmontools.service
Пакет Ubuntu также используется /etc/default/smartmontoolsдля управления запуском демона в поддерживаемых конфигурациях пакетов. Если служба неактивна после установки, проверьте этот файл на наличие соответствующей start_smartd=yesнастройки, а затем перезапустите службу. Если запуск не удался, прочтите журнал перед изменением файлов юнитов:
sudo journalctl -u smartmontools.service -b
Поскольку конфигурация включает в себя -M test, перезапуск службы должен инициировать отправку одного тестового электронного письма. Подтвердите получение. Тест доказывает, что smartd может вызвать почтовый путь и что сообщение может достичь папки «Входящие»; он не имитирует сбой диска и не гарантирует будущую доставку. После успешного прохождения теста отредактируйте /etc/smartd.confи удалите , -M testчтобы обычные перезапуски не отправляли дополнительные тестовые сообщения. Затем перезапустите службу еще раз:
sudo systemctl restart smartmontools.service
5. Убедитесь, что за каждым диском ведется наблюдение.
Проверьте как журналы обслуживания, так и результаты проверки состояния системы вручную:
sudo journalctl -u smartmontools.service -b
sudo smartctl -a /dev/sda
Замените путь на каждый диск, обнаруженный в ходе обнаружения. В журнале демона должно быть указано, что он открыл поддерживаемые устройства и запланировал проверки без повторения ошибок доступа к устройствам. Теперь, когда устройство работает исправно, это полезная базовая информация, но она не гарантирует защиту от внезапного сбоя.
Чтобы проверить работу устройства, не дожидаясь сбоя, запустите самотестирование накопителя, если устройство его поддерживает. Короткий тест, как правило, менее обременителен, чем длительный, но проверьте руководство пользователя накопителя и избегайте запуска диагностики на нестабильной системе или на накопителе с невосполнимыми данными и без резервной копии. Команда теста может выглядеть следующим образом sudo smartctl -t short /dev/sda: ; накопитель сообщает, когда ожидается завершение теста. Просмотрите результат с помощью команды sudo smartctl -l selftest /dev/sda. Тест электронной почты и самотестирование накопителя — это отдельные проверки: одна подтверждает доставку, а другая запрашивает у устройства самодиагностику.
Распространенные проблемы и что следует проверить
Сервис работает, но электронное письмо не приходит.
Сначала отправьте еще одно сообщение с mailкомандой. Если это не удастся, проверьте настройки SMTP-ретранслятора, аутентификации, TLS, политики отправителя, DNS, очереди и папки со спамом. Если отправка почты из командной строки работает, а проверка smartd не проходит, убедитесь, что получатель отображается в активной DEVICESCANстроке, что mailисполняемый файл установлен и что smartd может его найти. Проверьте журнал демона на наличие сообщений об ошибках почтового клиента.
В результате сканирования отсутствует дисковод.
Запустите программу sudo smartctl --scan-openеще раз и проверьте инструкции для конкретного устройства. Для моста USB-to-SATA может потребоваться особый режим сквозной передачи, в то время как некоторые RAID-контроллеры требуют синтаксиса, специфичного для контроллера. Не гадайте: неправильный тип устройства может привести к тому, что smartmontools запросит не тот целевой объект или не предоставит никакой полезной информации.
Диск показывает «ПРОЙДЕНО», но есть ошибки.
Вместо того чтобы рассматривать общий обзор как полную диагностику, внимательно изучите подробные характеристики, журнал ошибок и журнал самодиагностики. Если количество ошибок увеличивается, устройство становится ненадежным или появляется предупреждение, незамедлительно создайте резервную копию важных данных и запланируйте замену. Чистый результат не заменяет регулярное резервное копирование.
Знайте пределы мониторинга электронной почты.
SmartD периодически опрашивает поддерживаемые устройства и отправляет по электронной почте выбранные предупреждения; он не отслеживает все возможные режимы сбоев, и отключенный от сети компьютер не может отправлять отчеты, пока он выключен или отключен. Электронные письма также могут быть задержаны, отклонены или отфильтрованы. Периодически проверяйте состояние службы и повторяйте тест доставки почты после изменения учетных данных SMTP или поставщиков. Для критически важных данных сочетайте мониторинг SMART с независимым резервным копированием и планом восстановления.
Официальные ссылки