Jak monitorować stan dysku SMART w systemie Ubuntu za pomocą alertów e-mail

Ubuntu 26.04 LTS oferuje obecnie w repozytorium pakietów smartmontools 7.5-2. Pakiet zawiera narzędzie SMART smartctl, które odczytuje dane o stanie dysku, oraz smartdusługę działającą w tle, która monitoruje wybrane zmiany i może wysyłać wiadomości e-mail. SMART to skrót od Self-Monitoring, Analysis and Reporting Technology (technologia samoobsługowego monitorowania, analizy i raportowania). Przed skonfigurowaniem alertów e-mail należy najpierw sprawdzić, czy Ubuntu może odczytywać dane SMART z każdego dysku; wiadomość nie może zostać wysłana dla urządzenia, którego system nie może monitorować.

W tym przewodniku skonfigurujemy monitor na jednym pulpicie Ubuntu i wyślemy testową wiadomość e-mail przed uruchomieniem alertów. Zakłada się, że komputer ma działającą trasę do przekaźnika SMTP, czyli usługi akceptującej pocztę wychodzącą. Sama aplikacja pocztowa na pulpicie nie zapewnia tej usługi.

Co może Ci powiedzieć alert SMART?

SMART to raportowane przez dysk informacje o stanie i błędach. Może on ujawnić stany ostrzegawcze, takie jak niepowodzenie kontroli stanu, rosnąca liczba błędów lub wyniki niektórych autotestów. Jest to system wczesnego ostrzegania, a nie obietnica, że ​​dysk przewidzi każdą awarię. Dysk może przestać działać bez ostrzeżenia, a wynik „PASSED” (Powodzony) nie dowodzi, że każdy plik jest możliwy do odczytu. Należy przechowywać osobną kopię zapasową ważnych danych.

Wartości zależą również od typu dysku i oprogramowania sprzętowego. Dyski twarde SATA i dyski SSD często wyświetlają tabele atrybutów; dyski NVMe raportują informacje o stanie w innym formacie. Nie należy porównywać surowych liczb atrybutów różnych producentów ani traktować jednego ogólnego progu jako uniwersalnego.

Co należy przygotować przed konfiguracją?

  • Konto Ubuntu z dostępem administratora.
  • Repozytoria pakietów włączone, połączenie internetowe niezbędne do instalacji.
  • Adres, na który powinny być wysyłane alerty.
  • Przekaźnik SMTP, z którego masz uprawnienia, np. uwierzytelniony serwer pocztowy dostawcy lub organizacji, wraz z jego hostem, portem, wymaganiami TLS i poświadczeniami.
  • Aktualna kopia zapasowa przed uruchomieniem diagnostyki dysku lub wprowadzeniem zmian w pamięci masowej.

Niektóre obudowy USB, sprzętowe kontrolery RAID, maszyny wirtualne i sieciowe warstwy pamięci masowej nie przekazują danych SMART do hosta Ubuntu. Polecenie działające na bezpośrednio podłączonym dysku może zatem nie zostać wykonane przez obudowę. Przed zmianą opcji urządzenia należy określić typ połączenia.

1. Znajdź nazwy dysków i sprawdź dostęp SMART

Wypisz urządzenia pamięci masowej i zapytaj smartmontools, które z nich może otworzyć:

lsblk -o NAME,TYPE,TRAN,MODEL,SIZE
sudo smartctl --scan-open

Ścieżki urządzeń zazwyczaj wyglądają jak /dev/sdadla dysku SATA lub /dev/nvme0kontrolera NVMe, ale użyj ścieżki wyświetlanej na komputerze. Przetestuj każdy cel za pomocą zapytania o stan urządzenia tylko do odczytu:

sudo smartctl -a /dev/sda

Zastąp /dev/sdazidentyfikowanym urządzeniem. W przypadku dysku NVMe zastąp go zgłoszoną ścieżką kontrolera. Przeczytaj wynik polecenia: powinien zawierać identyfikator dysku i informacje o jego stanie, a nie komunikat, że SMART nie jest obsługiwany lub że urządzenia nie można otworzyć. Jeśli skanowanie wykryje urządzenie o wymaganym typie, postępuj zgodnie z instrukcją obsługi smartmontools dla konkretnego kontrolera lub mostu, zamiast kopiować -dopcję z innego systemu.

Zainstaluj pakiet monitorujący i narzędzia pomocnicze:

sudo apt update
sudo apt install smartmontools mailutils

mailutilsDostarcza program wiersza poleceń mailużywany przez domyślną ścieżkę poczty smartd. Sam w sobie nie jest przekaźnikiem poczty wychodzącej. Jeśli Ubuntu nie ma jeszcze skonfigurowanego agenta transferu poczty, skonfiguruj go przed kontynuowaniem.

2. Skonfiguruj pocztę wychodzącą przed zmianą smartd

Pakiet Postfix w Ubuntu może przekazywać pocztę wychodzącą za pośrednictwem dostawcy SMTP. Skonfiguruj go jako klienta poczty, używając hosta przekaźnika, uwierzytelniania, adresu nadawcy, portu i ustawień TLS podanych przez dostawcę; nie konfiguruj pulpitu jako otwartego przekaźnika. Ubuntu dokumentuje konfigurację Postfix i przekaźnika w swoim podręczniku serwera. Dokładne dane uwierzytelniające i ustawienia różnią się w zależności od dostawcy poczty, dlatego należy postępować zgodnie z aktualnymi instrukcjami tego dostawcy. Chroń wszelkie przechowywane poufne dane przed innymi użytkownikami lokalnymi.

Przed zaangażowaniem smartd wyślij wiadomość testową z wiersza poleceń:

printf 'This is an Ubuntu SMART email test.\n' | mail -s 'SMART alert test' you@example.com

Zastąp przykładowy adres odbiorcy swoim własnym. Sprawdź, czy wiadomość dotarła, nawet jeśli trafiła do folderu ze spamem lub niechcianą pocztą. Jeśli nie, najpierw rozwiąż problemy z przekaźnikiem poczty. Sprawdź kolejkę pocztową za pomocą mailqi przejrzyj logi Postfixa za pomocą journalctl -u postfix. Pomyślne wykonanie polecenia lokalnego może oznaczać jedynie, że wiadomość została umieszczona w kolejce; prawdziwym testem jest dostarczenie jej do zdalnej skrzynki pocztowej.

3. Dodaj miejsce docelowe alertu SMART

Otwórz konfigurację smartd jako administrator:

sudoedit /etc/smartd.conf

W przypadku komputera, na którym domyślne skanowanie urządzeń wykryje dyski, użyj jednej aktywnej linii skanowania urządzeń, zastępując przykładowy adres. Jeśli plik ma już aktywny DEVICESCANwpis, edytuj tę linię zamiast dodawać duplikat:

DEVICESCAN -a -m you@example.com -M test

DEVICESCANProsi smartd o wykrycie obsługiwanych urządzeń. -aWłącza wspólny zestaw kontroli stanu, dziennika błędów, autotestu i atrybutów. -mUstawia odbiorcę wiadomości e-mail. -M testŻąda jednej testowej wiadomości e-mail po uruchomieniu demona. W podręczniku konfiguracji smartd zaznaczono, że DEVICESCANwpis przejmuje konfigurację skanowania, dlatego nie należy dodawać po nim wierszy dotyczących poszczególnych dysków. Jeśli automatyczne wykrywanie nie wykryje dysku, należy użyć jawnych wpisów dotyczących urządzeń, opartych na smartctl --scan-openwynikach i podręczniku.

Zapisz i zamknij edytor. Jeśli plik konfiguracyjny zawiera informacje prywatne, powinien być dostępny do odczytu tylko dla administratorów. Odbiorca nie jest hasłem, ale dane uwierzytelniające przekaźnika SMTP nigdy nie powinny być umieszczane w tym pliku.

4. Rozpocznij monitorowanie i potwierdź alert testowy

W Ubuntu jednostka pakietowa nosi nazwę smartmontools.service. Włącz ją i uruchom, a następnie sprawdź jej stan:

sudo systemctl enable --now smartmontools.service
systemctl status smartmontools.service

Pakiet Ubuntu służy również /etc/default/smartmontoolsdo kontrolowania uruchamiania demona w obsługiwanych konfiguracjach pakietów. Jeśli usługa jest nieaktywna po instalacji, sprawdź plik pod kątem start_smartd=yesustawienia, a następnie uruchom ponownie usługę. Jeśli uruchomienie się nie powiedzie, przed modyfikacją plików jednostki zapoznaj się z dziennikiem:

sudo journalctl -u smartmontools.service -b

Ponieważ konfiguracja obejmuje -M test, ponowne uruchomienie usługi powinno spowodować wysłanie jednego testowego e-maila. Potwierdź odbiór. Test dowodzi, że smartd może wywołać ścieżkę poczty i że wiadomość może dotrzeć do skrzynki odbiorczej; nie symuluje awarii dysku ani nie gwarantuje dostarczenia w przyszłości. Po pomyślnym zakończeniu testu edytuj /etc/smartd.confi usuń -M test, aby normalne ponowne uruchomienie nie powodowało wysyłania dodatkowych wiadomości testowych. Następnie ponownie uruchom usługę:

sudo systemctl restart smartmontools.service

5. Sprawdź, czy każdy dysk jest monitorowany

Sprawdź oba dzienniki serwisowe i ręczne dane wyjściowe dotyczące stanu zdrowia:

sudo journalctl -u smartmontools.service -b
sudo smartctl -a /dev/sda

Zastąp ścieżkę każdym dyskiem zgłoszonym podczas wykrywania. Dziennik demona powinien wskazywać, że otwierał obsługiwane urządzenia i planował sprawdzenia bez powtarzania błędów dostępu do urządzenia. Prawidłowy raport stanowi obecnie przydatną informację bazową, ale nie gwarantuje braku nagłej awarii.

Aby sprawdzić działanie bez czekania na awarię, uruchom autotest dysku, gdy urządzenie go obsługuje. Krótki test jest zazwyczaj mniej uciążliwy niż długi, ale sprawdź instrukcję obsługi dysku i unikaj uruchamiania diagnostyki w niestabilnym systemie lub na dysku z niezastąpionymi danymi i bez kopii zapasowej. Polecenie testu może wyglądać następująco sudo smartctl -t short /dev/sda: dysk raportuje przewidywany termin zakończenia testu. Sprawdź wynik za pomocą sudo smartctl -l selftest /dev/sda. Test e-maila i autotest dysku to oddzielne testy: jeden weryfikuje dostarczenie wiadomości, a drugi prosi urządzenie o samosprawdzenie.

Typowe problemy i co sprawdzić

Usługa działa, ale nie ma poczty e-mail

Najpierw wyślij kolejną wiadomość za pomocą mailpolecenia. Jeśli to się nie powiedzie, sprawdź ustawienia przekaźnika SMTP, uwierzytelniania, TLS, polityki nadawcy, DNS, kolejki i folderu spamu. Jeśli poczta z wiersza poleceń działa, ale test smartd nie, sprawdź, czy odbiorca pojawia się w aktywnym DEVICESCANwierszu, czy plik mailwykonywalny jest zainstalowany i czy smartd może go znaleźć. Sprawdź dziennik demona pod kątem błędów programu pocztowego.

Brak dysku podczas skanowania

Uruchom sudo smartctl --scan-openponownie i sprawdź instrukcje specyficzne dla danego urządzenia. Most USB-SATA może wymagać określonego trybu pass-through, podczas gdy niektóre kontrolery RAID wymagają składni specyficznej dla danego kontrolera. Nie zgaduj: niewłaściwy typ urządzenia może spowodować, że smartmontools odpyta niewłaściwy cel lub nie zgłosi niczego przydatnego.

Dysk zgłasza komunikat „PASSED”, ale występują błędy

Przeczytaj szczegółowe atrybuty, dziennik błędów i dziennik autotestów zamiast traktować ogólne podsumowanie jako kompletną diagnozę. Jeśli błędy narastają, urządzenie staje się zawodne lub pojawia się alert, niezwłocznie wykonaj kopię zapasową ważnych danych i zaplanuj wymianę. Czysty wynik nie zastąpi rutynowych kopii zapasowych.

Poznaj ograniczenia monitorowania poczty e-mail

Smartd okresowo sprawdza obsługiwane urządzenia i wysyła e-mailem wybrane ostrzeżenia; nie monitoruje wszystkich możliwych trybów awarii, a komputer stacjonarny offline nie może zgłaszać awarii, gdy jest wyłączony lub odłączony. Wiadomości e-mail mogą być również opóźniane, odrzucane lub filtrowane. Należy okresowo sprawdzać stan usługi i powtarzać test dostarczania poczty po zmianie danych logowania SMTP lub dostawców. W przypadku danych krytycznych należy połączyć monitorowanie SMART z niezależnymi kopiami zapasowymi i planem odzyskiwania.

Oficjalne referencje

Zostaw komentarz

Jak skonfigurować lokalny serwer SUSE RMT (zamiennik SMT)

Jak skonfigurować lokalny serwer SUSE RMT (zamiennik SMT)

Skonfiguruj SUSE RMT na SLES 15, zsynchronizuj metadane SCC, utwórz kopię lustrzaną wybranych repozytoriów, zarejestruj klientów przez HTTPS i poznaj ograniczenia migracji z SMT.

Naprawa sterowników karty dźwiękowej, które nie zostały wykryte w systemie Pardus Linux 23

Naprawa sterowników karty dźwiękowej, które nie zostały wykryte w systemie Pardus Linux 23

Rozwiąż problem brakującej karty dźwiękowej w systemie Pardus Linux 23. Sprawdź wykrywanie ALSA, moduły jądra, usługi audio, profile wyjściowe, oprogramowanie układowe i aktualizacje w bezpieczny sposób.

Naprawa rozdzielczości wyświetlania zablokowanej na 1024x768 na komputerze gościnnym Pardus KVM

Naprawa rozdzielczości wyświetlania zablokowanej na 1024x768 na komputerze gościnnym Pardus KVM

Napraw gościa Pardus KVM, który zablokował się na rozdzielczości 1024x768, sprawdzając wirtualny procesor GPU, agenta SPICE, sesję X11 lub Wayland i weryfikując prawidłowość wyższych trybów wyświetlania.

Jak automatycznie zamontować zdalny katalog SSHFS podczas rozruchu w systemie Debian

Jak automatycznie zamontować zdalny katalog SSHFS podczas rozruchu w systemie Debian

Automatyczne montowanie zdalnego katalogu SSHFS podczas rozruchu w systemie Debian przy użyciu klucza SSH, pliku /etc/fstab, opcji sieciowych systemd, automatycznego montowania i kroków weryfikacji.

Napraw błąd „Nie można przydzielić pamięci” podczas aktualizacji systemu SLES

Napraw błąd „Nie można przydzielić pamięci” podczas aktualizacji systemu SLES

Rozwiąż problem „Nie można przydzielić pamięci” podczas aktualizacji SLES. Sprawdź pamięć RAM, swap, logi OOM i limity procesów, a następnie odzyskaj dane bez przerywania transakcji pakietów.

Rozwiązywanie problemów z kalibracją ekranu dotykowego w tabletach Harmonica OS: Wybierz odpowiednie rozwiązanie dla systemu Linux

Rozwiązywanie problemów z kalibracją ekranu dotykowego w tabletach Harmonica OS: Wybierz odpowiednie rozwiązanie dla systemu Linux

Rozwiąż problemy z przesunięciem dotyku, obrotem i mapowaniem wyświetlania na tabletach z systemem Harmonica OS (HamoniKR). Porównaj poprawki X.Org i libinput, przetestuj bezpiecznie i dowiedz się, kiedy kalibracja nie pomoże.

How to Set Up an Encrypted SWAP Partition on Existing Debian 12

How to Set Up an Encrypted SWAP Partition on Existing Debian 12

Encrypt an existing Debian 12 swap partition with dm-crypt, a fresh random key at every boot, /etc/crypttab, /etc/fstab, and safe verification steps.

Jak monitorować stan dysku SMART w systemie Ubuntu za pomocą alertów e-mail

Jak monitorować stan dysku SMART w systemie Ubuntu za pomocą alertów e-mail

Skonfiguruj smartmontools w Ubuntu, aby monitorować stan dysku i wysyłać alerty SMART e-mail. Sprawdź obsługę urządzenia, skonfiguruj dostarczanie poczty, przetestuj powiadomienia i rozwiąż problemy.

Napraw błąd „Nie znaleziono urządzenia rozruchowego” po zainstalowaniu Debiana w systemie UEFI

Napraw błąd „Nie znaleziono urządzenia rozruchowego” po zainstalowaniu Debiana w systemie UEFI

Napraw błędy rozruchu UEFI w systemie Debian, sprawdzając tryb rozruchu instalatora, partycję systemową EFI, wpisy NVRAM, pliki GRUB EFI, bezpieczny rozruch i awaryjne wersje oprogramowania sprzętowego.

Jak skonfigurować automatyczne migawki Btrfs na pulpicie Ubuntu

Jak skonfigurować automatyczne migawki Btrfs na pulpicie Ubuntu

Skonfiguruj Snappera do wykonywania i czyszczenia zaplanowanych migawek Btrfs w systemie Ubuntu Desktop. Najpierw sprawdź układ podwoluminów, włącz timery systemd i zweryfikuj bezpieczne przechowywanie.