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 bezpiecznie odzyskać utracone partycje i dane z dysku twardego

Jak bezpiecznie odzyskać utracone partycje i dane z dysku twardego

Dowiedz się, jak odzyskać utracone partycje i pliki za pomocą TestDisk i PhotoRec. Zabezpiecz dysk źródłowy, przeskanuj go bezpiecznie i zapisz odzyskane dane na innym dysku.

Jak skanować kody QR na komputerze stacjonarnym z systemem Linux

Jak skanować kody QR na komputerze stacjonarnym z systemem Linux

Skanuj kody QR w systemie Linux za pomocą CoBang, używając kamery internetowej lub pliku obrazu. Zobacz opcje instalacji, kroki konfiguracji i poprawki dotyczące dostępu do kamery Flatpak.

Jak zmienić ustawienia kamery internetowej w systemie Linux za pomocą Cameractrls

Jak zmienić ustawienia kamery internetowej w systemie Linux za pomocą Cameractrls

Zmień ustawienia kamery internetowej w systemie Linux za pomocą narzędzia Cameractrls: dostosuj ekspozycję, kolor, redukcję migotania i inne obsługiwane elementy sterujące, a następnie sprawdź zgodne tryby wideo.

Jak zainstalować PhpStorm na Linuksie: Toolbox, Tar.gz, Snap i AUR

Jak zainstalować PhpStorm na Linuksie: Toolbox, Tar.gz, Snap i AUR

Zainstaluj PhpStorm na Linuksie za pomocą JetBrains Toolbox lub samodzielnego archiwum tar.gz, a także opcji Snap i Arch AUR. Java jest już dołączona.

Jak wyciąć obraz w systemie Linux za pomocą programu GIMP

Jak wyciąć obraz w systemie Linux za pomocą programu GIMP

Usuń tło zdjęcia w systemie Linux za pomocą programu GIMP: narysuj obiekt, usuń wybrane tło, zachowaj przezroczystość i wyeksportuj plik PNG, który można ponownie wykorzystać.

Jak wykonać kopię zapasową płyty CD-ROM w postaci obrazu ISO w systemie Linux

Jak wykonać kopię zapasową płyty CD-ROM w postaci obrazu ISO w systemie Linux

Utwórz obraz ISO płyty CD-ROM w systemie Linux za pomocą GNOME Disks lub dd. Zidentyfikuj napęd optyczny, monitoruj kopiowanie, zweryfikuj obraz i dowiedz się, kiedy uszkodzona płyta lub płyta audio wymaga użycia innego narzędzia.

Jak skonfigurować dwa panele w środowisku XFCE 4

Jak skonfigurować dwa panele w środowisku XFCE 4

Utwórz oddzielny panel XFCE 4 dla każdego wyświetlacza, przypisz drugi panel do odpowiedniego wyjścia, określ jego położenie i rozmiar, a następnie dodaj potrzebne elementy uruchamiające i statusu.

Jak zainstalować Cisco Packet Tracer w systemie Linux

Jak zainstalować Cisco Packet Tracer w systemie Linux

Pobierz Cisco Packet Tracer 9.0.1 dla systemu Ubuntu 64-bit, zainstaluj pakiet DEB za pomocą APT, zaakceptuj licencję w terminalu i zaloguj się, aby rozpocząć laboratorium.

Pobierz FlightGear za darmo: Oficjalny przewodnik instalacji

Pobierz FlightGear za darmo: Oficjalny przewodnik instalacji

Pobierz FlightGear za darmo z oficjalnej strony. Porównaj pakiety dla systemów Windows, macOS i Linux, zainstaluj pliki danych i rozpocznij swój pierwszy lot.

OKSampler: darmowy, prosty sampler muzyczny do rytmów klawiszowych

OKSampler: darmowy, prosty sampler muzyczny do rytmów klawiszowych

OKSampler mapuje klipy MP3 na klawisze klawiatury i umożliwia zapętlanie dźwięku. Dowiedz się, co robi ten starszy, darmowy program, gdzie kończą się jego stare funkcje i co sprawdzić przed pobraniem.