Benachrichtigung über apt-get Updates per E-Mail
Seit neuestem ersparen ich mir den täglichen Login auf meine Linuxserver um nach Updates zu schauen. Ich lasse mich direkt von den Servern per Mail über anstehende Updates informieren!
Welche der drei von mir hier vorgestellten Möglichkeiten ich selbst benutze, hängt allein davon ab, wer informiert werden soll (ich selbst will natürlich immer alles wissen ;) )
Möglichkeit EINS:
Im leider geschlossenem Sysop Forum fand ich folgende Lösung, Welche eine schöne Mail verfasst, wenn denn Updates anliegen. In der Mail wird man noch informiert, welche Packageversionen aktuell installiert sind und welche Version in den eingetragenen Repositorys gefunden wurde.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | #!/bin/bash # # (c)opyright 2005-2007 Thomas Lavis # clear # # Empfänger hier eingeben # eMailEmpfaenger="name@deinedomain.tld" # Ausgabe für Script auf international setzen TMPLANG=`echo $LANG` LANG=C if [[ `apt-get update 2>&1 | grep Get` ]] ; then Updates=`apt-get -s dist-upgrade 2>&1 | grep Inst | wc -l` if [ $Updates -ne 0 ] ; then LANG=$TMPLANG echo "Für die folgenden Pakete gibt es ein Update:" > aptnachricht echo "" >> aptnachricht echo "" >> aptnachricht apt-get -s dist-upgrade | grep Inst | cut -c 6- >> aptnachricht mutt -s "Ergebnis von aptcheck auf Server: `hostname`" $eMailEmpfaenger < aptnachricht rm aptnachricht fi fi |
Möglichkeit ZWEI:
Ich weiß nicht mehr genau wo, aber folgende Lösung sendet einfach nur eine Mail wenn es Updates gibt, welche einen über die generelle Verfügbarkeit von Updates informiert, also keine weiteren Details zu den Packages enthält, welche zu updaten sind :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | #!/bin/bash EMAIL="root" SUBJECT="[`hostname`] Update Hinweis" MESSAGE="SYSTEMMELDUNG:\nAuf `hostname` sind neue Updates vorhanden" # Dieses Script versendet eine eMail, sobald Online-Updates fuer das System # verfuegbar sind. Das Script ist Public Domain, der Autor uebernimmt keine # Haftung fuer das Script. # Debian apt-get update &>/dev/null COUNT=`apt-get -s upgrade | grep -c "Inst"` if [ $COUNT -gt 0 ] then echo -e "$MESSAGE" | mail -s "$SUBJECT" "$EMAIL" fi |
Möglichkeit DREI:
Gefunden im Blog von Björn Böttcher - Einfach als Eintrag in die Crontab über nachfolgende Zeile via
crontab -e
und da:
1 | @daily aptitude update; aptitude -d -y dist-upgrade) | mail -s “Debian OS Updates -> `hostname`” deinname@deinedomain.tld |
Die einfachste Möglichkeit die ich bisher gefunden habe! Reicht in den meisten Fällen schon völlig aus und stellt auch die Puristen unter uns zufrieden!
--- Updated on 12.12.2008 ---




