Festplattenüberwachungsskript für Headless Linux Server

Jan 25, 2025
Wartung und Optimierung

Moderne Festplatten verfügen über einen internen Mechanismus namens S.M.A.R.T. über die es möglich ist zu wissen, wann eine Festplatte ausfallen wird. Wäre es nicht nett vom Server, Ihnen vor einem solchen Fehler eine E-Mail zu senden?

Überblick

Programme wie "mdadm" (für Software-RAID-Verwaltung) und "Palimpsest Disk Utility" (auf der Ubuntu LiveCD verwendet) verwenden die S.M.A.R.T-Informationen, um Sie zu informieren, wenn die Festplatte kurz vor dem Ausfall steht oder ausgefallen ist. Auf einem Headless-Server (keine GUI) gibt es jedoch keinen Dienst, der Sie über das bevorstehende Schicksal informiert, bevor es zu spät ist. Wie würden Sie darüber hinaus Bescheid wissen, ohne sich manuell beim Server anzumelden?

Wenn dieses Skript einmal täglich mit cron ausgeführt wird, werden Sie benachrichtigt, wenn einer der fehlerhaften Sektoren der Festplatten des Systems einen Grenzwert erreicht hat, der absichtlich unter dem Schwellenwert "Die Festplatte ist fehlerhaft" liegt, und die Warnung per E-Mail an den Administrator des Computers gesendet.

Voraussetzungen und Annahmen

  • Sie haben die E-Mail-Unterstützung für den Server bereits mithilfe der Option „ So richten Sie E-Mail-Benachrichtigungen unter Linux ein " leiten.
  • Sie verwenden ein Debian-basiertes System.
  • Sie verwenden keinen * Hardware-RAID-Controller.
  • Sie werden sehen, dass ich VIM als Editorprogramm verwende. Dies liegt nur daran, dass ich daran gewöhnt bin. Sie können jeden anderen Editor verwenden, den Sie möchten.

* Da es sehr wahrscheinlich ist, dass der Hardware-RAID-Controller den Zugriff des Systems auf diese Informationen blockiert.

Konfiguration

Installieren Sie das Paket „smartmontools“, das die S.M.A.R.T-Informationen vom Festplattencontroller liest und uns präsentiert.

sudo aptitude installiert smartmontools

Erstellen Sie das Monitorskript:

sudo vim /root/smart-monitor.sh

Machen Sie dies zum Inhalt:

#!/bin/bash
######## E-Mail-Funktion ########
email_admin_func ()
{
Echo "An: [email protected]"> $ temp_email_file
echo "Von: [email protected]" >> $ temp_email_file
echo "Betreff: S.M.A.R.T Monitor-Schwellenwert überschritten" >> $ temp_email_file
echo "" >> $ temp_email_file
echo -e $ 1 >> $ temp_email_file
/ usr / sbin / ssmtp -t <$ temp_email_file
echo "E-Mail an den Administrator gesendet"
}

smartc_func()
{
/ usr / sbin / smartctl -A / dev / $ 1 | grep Reallocated_Sector_Ct | tr -s '' | cut -d '' -f11
}

######## Ende der Funktionen #########

######## Arbeitsparameter einstellen ########
temp_email_file = / tmp / smart_monitor.txt
allow_threshold = 5 #Stellt die Anzahl der fehlerhaften Sektoren ein, mit denen Sie leben möchten, empfohlen 5.

########Motor########
für i in sda sdb; do # Fügen Sie Datenträgernamen zu dieser Liste hinzu oder subtrahieren Sie sie entsprechend Ihrer Einrichtung.
wenn [[ "`smartc_func $i`" -ge $allowed_threshold ]]; dann
Echo E-Mail an den Administrator
email_admin_func "Eine der Festplatten auf" `hostname`" hat den oberen Schwellenwert erreicht !!! nDer Schwellenwert wurde auf $ allow_threshold festgelegt und der Status der $ i-Festplatte lautete: "` smartc_func $ i` ""
Sein
erledigt

Die wichtigsten Punkte sind:

  • E-Mail-Funktion - Legen Sie die entsprechenden Informationen wie den Computernamen und die Administrator-E-Mail-Adresse fest.
  • Zulässiger Schwellenwert - Stellen Sie diesen Parameter auf das ein, was Sie für angemessen halten. Ich habe 5 verwendet, da der für die von mir verwendeten Festplatten mit Serverqualität festgelegte Grenzwert 10 betrug. (Ich habe den Schwellenwert für Laufwerke mit Consumer-Qualität auf gefunden so hoch wie 140 sein).
  • Stellen Sie die Geräte ein, die Sie überwachen möchten, indem Sie die Aufzählung der Datenträgernamen in der for-Schleife anpassen. Derzeit sind zwei Festplatten (sda & sdb) enthalten. Passen Sie diese an Ihr Setup an. Sie können alle oder nur einige Ihrer Festplatten einschließen, wenn Sie aus irgendeinem Grund * eine Festplatte ausschließen müssen.

* In meinem ursprünglichen Setup war die erste Festplatte ein Flash-Laufwerk, daher ist das Lesen der Informationen, wenn überhaupt möglich, nicht von großem Nutzen.

Machen Sie das Skript ausführbar:

sudo chmod + x /root/smart-monitor.sh

Das Setup ist abgeschlossen.

Planen Sie die automatische Ausführung des Skripts

Wir möchten, dass das Skript automatisch ausgeführt wird, damit wir einen neuen Cron-Job dafür erstellen.
Wie in der „ So richten Sie E-Mail-Benachrichtigungen unter Linux ein Das Ergebnis ist, dass cron uns automatisch per E-Mail informiert, sobald das Skript selbst auf einen Fehler stößt.

Öffnen Sie den Cron Job Scheduler:

sudo crontab -e

Fügen Sie dies zu seinem Inhalt hinzu:

0 7 * * * /root/smart-monitor.sh > /tmp/last_smart_monitor_run.log

Dadurch wird das Skript so eingestellt, dass es jeden Morgen um 7 Uhr morgens ausgeführt wird.


Alle Ihre Branchen gehören uns :)

Raspberry Pi Box Hard Drive Scripts


Wartung und Optimierung - Die beliebtesten Artikel

Fünf Möglichkeiten, Android anzupassen, mit dem iOS immer noch nicht übereinstimmt

Wartung und Optimierung Jun 20, 2025

UNCACHED INHALT Android ist sehr anpassbar - viele seiner Funktionen sind nur Standardeinstellungen und können ohne Rooting gegen Alternativen von Drittanbietern ausgetauscht wer..


So öffnen Sie einen bestimmten Satz von Webseiten, wenn Sie Ihren Browser starten

Wartung und Optimierung Aug 12, 2025

UNCACHED INHALT Wenn Sie bestimmte Webseiten haben, die Sie bei jedem Öffnen Ihres Browsers besuchen, können Sie Zeit sparen, indem Sie diese beim Starten Ihres Browsers automat..


So ändern Sie die Signatur und andere E-Mail-Einstellungen für "Von meinem iPhone gesendet"

Wartung und Optimierung Jun 24, 2025

UNCACHED INHALT Möglicherweise haben Sie beim Senden einer E-Mail von Ihrem iPhone oder iPad bemerkt, dass Ihre Nachrichten mit der Signatur "Gesendet von" versehen sind. Sie ble..


Warum müssen Sie Windows-Updates automatisch installieren?

Wartung und Optimierung Nov 17, 2024

UNCACHED INHALT Es gibt wieder dringende Sicherheitspatches für Windows, und diesmal sind die Probleme, die sie beheben, „ möglicherweise katastrophal ”Proble..


Fragen Sie nach How-To Geek: Ändern von Verknüpfungssymbolen, Fehlende Lautstärkeanzeigen und Freigeben von URLs für Smartphones

Wartung und Optimierung Aug 1, 2025

UNCACHED INHALT Jede Woche tauchen wir in unseren Leser-Postsack ein und beantworten Ihre Computer- und technischen Fragen. Diese Woche geht es darum, Dateisymbole auszutauschen, Volume..


Was ist Logical Volume Management und wie aktivieren Sie es in Ubuntu?

Wartung und Optimierung Jan 17, 2025

Logical Volume Management (LVM) ist eine Datenträgerverwaltungsoption, die in jeder wichtigen Linux-Distribution enthalten ist. Unabhängig davon, ob Sie Speicherpools einrichten o..


Verwenden Sie die erweiterten Tools, um Leistungsprobleme in Windows 7 zu beheben

Wartung und Optimierung Nov 4, 2024

Sie haben Ihr neues Windows 7-System in Betrieb, aber plötzlich stellen Sie fest, dass einige Dinge nicht mehr so ​​reibungslos funktionieren wie früher. Heute schauen wir uns an, wie S..


Ändern Sie Ihre Desktop-Hintergründe auf einfache Weise mit DeskSlide

Wartung und Optimierung Jul 1, 2025

UNCACHED INHALT Möchten Sie Ihrem Desktop etwas Abwechslung verleihen, anstatt Tag für Tag dasselbe Hintergrundbild zu betrachten? Viel Spaß beim automatischen Ändern Ihrer Hintergrundb..


Kategorien