Digital Eliteboard

Registriere dich noch heute kostenloses um Mitglied zu werden! Sobald du angemeldet bist, kannst du auf unserer Seite aktiv teilnehmen, indem du deine eigenen Themen und Beiträge erstellst und dich über deinen eigenen Posteingang mit anderen Mitgliedern unterhalten kannst! Zudem bekommst du Zutritt zu Bereiche, welche für Gäste verwert bleiben

Script zur Speicherüberwachung

Alex

Administrator
Teammitglied
Mitglied seit
10. Januar 2012
Beiträge
15.323
Reaktion auf Beiträge
15.978
Punkte
163
Da ich neulich das Problem hatte, dass mir der Speicher vollgelaufen ist, hab ich mir mal ein Script zusammen geschußtert, das mir eine Mail schickt, sofern ein Schwellenwert in Prozent überschritten ist:

Dazu muss zuerst noch das Sendmail Paket installiert werden:
Code:
apt-get install -y sendEmail
Hier das Script:
Code:
#!/bin/bash
AKTUELL=$(df / | grep / | awk '{ print $5}' | sed 's/%//g')
GRENZE=95

if [ "$AKTUELL" -gt "$GRENZE" ] ; then
    sendEmail -f ABSENDERADRESSE -t EMPFAENGERADRESSE -u BETREFFZEILE -m MAILINHALT -s SMTPSERVER -xu USERNAME -xp PASSWORD
fi
Dieses lasse ich dann stündlich über eine Cronjob ausführen:
Code:
nano /etc//crontab
Code:
0 * * * * root bash /PFAD/ZUM/SCRIPT/discspace.sh #Festplattenbelegung prüfen
 
Zuletzt bearbeitet:

rolu2

Moderator
Teammitglied
Mitglied seit
16. November 2009
Beiträge
7.982
Reaktion auf Beiträge
3.595
Punkte
163
AW: Script zur Speicherüberwachung

Ich habe das mal verfeinert. So kann man einmal einstellen,wenn nur /var/log oder der ganze Speicher fast voll ist

Bei den meisten Usern denk ich wird /var/log volllaufen und daduch wird z.B kein EMM mehr geloggt

Code:
#!/bin/bash
##############Hier den Grenzwert einstellen und Maildaten eintragen#################
#Fuer die ganzen Speicher(SD-Karte usw)
GRENZE1=95
#Fuer /var/log (Hier werden alle Logs hingeschrieben)
GRENZE2=80
#
EMAILFROM="Absendermailadresse"
EMAILTO='Empfaengermailadesse'
EMAILSERVER='mail.gmx.net'
EMAILUSER='User'
EMAILPASS='Passwort'
############################################################

AKTUELL1=$(df / | grep / | awk '{ print $5}' | sed 's/%//g')
AKTUELL2=$(df /var/log | grep /var/log | awk '{ print $5}' | sed 's/%//g')
MESSAGE1="Achtung.Der Gesamtspeicher ist fast voll"
MESSAGE2="Achtung.Der Speicher unter /var/log ist fast voll"
SUBJECT="Info vom Server"




if [ "$AKTUELL1" -gt "$GRENZE1" ] ; then
    echo "Verschicke EMail.."
        sendEmail -f $EMAILFROM -t $EMAILTO -u "$SUBJECT" -m "$MESSAGE1" -s $EMAILSERVER -xu "$EMAILUSER" -xp "$EMAILPASS"
    fi
if [ "$AKTUELL2" -gt "$GRENZE2" ] ; then
    echo "Verschicke EMail.."
        sendEmail -f $EMAILFROM -t $EMAILTO -u "$SUBJECT" -m "$MESSAGE2" -s $EMAILSERVER -xu "$EMAILUSER" -xp "$EMAILPASS"
    fi
 
Zuletzt bearbeitet:
OP
OP
Alex

Alex

Administrator
Teammitglied
Mitglied seit
10. Januar 2012
Beiträge
15.323
Reaktion auf Beiträge
15.978
Punkte
163
AW: Script zur Speicherüberwachung

Ich hab das Ganz auf einer "normalen" Linuxvm gebraucht, da hat meiner Variante mit einer Platte völlig gereicht, aber deine Verfeinerung ist natürlich Super
 

Oben Unten