Anleitung Server Upgrade durch CRON-APT
Cron-apt ist ein Programm um über ein Server Upgrade mittels APT informiert zu werden.
Einfache Installation von Cron-apt
Um cron-apt zu installieren muss das folgende Paket installiert werden:
cron-apt
Achtung bei Ubuntu wird bei der Installation Postfix konfiguriert; nachvollziehbar durch: dpkg-reconfigure –priority=low postfix. Es wird auch noch resolvconf installiert das macht den Netzwerkmanger unnütz. (Beides Angaben von Ubuntunutzern aus Ubuntuusers.de)
Einrichtung Cron-apt und der automatisierten Email bzgl. Server Upgrade
Die Konfigurationsdateien von cron-apt liegen im Verzeichnis /etc/cron-apt/.
Wichtige Konfigurationsdateien von Cron-apt
Die wichtigsten Konfigurationsdateien befinden sich im Ordner /etc/cron-apt/action.d. Standardmäßig, nach der Installation, befindet sich dort:
0-update
Der Inhalt der Datei ist:
update -o quiet=2
–> Update der auf den Servern befindlichen Quellen.
3-download
In dieser Datei steht:
autoclean -y
dist-upgrade -d -y -o APT::Get::Show-Upgraded=true
–> Es werden die Datein zum Aktualisieren bzw. Installieren herunter geladen.
Weitergehende Einstellungen von Cron-apt
Mailbenachrichtigung bei Server Upgrade
Wenn man nicht nur die Updates herunter laden will, sondern sich darüber informieren lassen will dann ist unter /usr/share/doc/cron-apt/examples/9-notify ein Beispiel gegeben um das zu verwirklichen:
-q -q –no-act upgrade
Um tatsächlich informiert zu werden muss die Datei nach /etc/cron-apt/ation.d/ kopiert werden und in /etc/cron-apt/config die Mailadresse an zu geben und das Ereigniss, wann dieses geschickt werden soll.
MAILTO=“DEINE@EMAIL-ADRESSE.de“
MAILON=“upgrade“
Zeitsteuerung des Server Upgrade
In der Standard Installation würde bei dauerhaft online befindlichen System cron-apt immer um 04:00 Uhr ausgeführt werden. Dies ist geregelt unter: /etc/cron.d/cron-apt
# Every night at 4 o’clock.
0 4 * * * root test -x /usr/sbin/cron-apt && /usr/sbin/cron-apt
# Every hour.
# 0 * * * * root test -x /usr/sbin/cron-apt && /usr/sbin/cron-apt
/etc/cron-apt/config2
# Every five minutes.
# */5 * * * * root test -x /usr/sbin/cron-apt && /usr/sbin/cron-apt
/etc/cron-apt/config2
Bei einem nicht dauerhaft online befindlichen System würde dieser Croneintrag dazu führen, dass bei Systemstart cron-apt ausgeführt werden würde. Wenn dies nicht gewünscht ist sollte dieser Eintrag gelöscht werden und statt dessen mit einem Softlink (Symlink) in den entsprechenden Cron. hourly oder .weekly kann cron-apt auch gesteuert werden.
ln -s /usr/sbin/cron-apt /etc/cron.daily/cron-apt
Cron-apt testen
Um cron-apt zu testen im Terminal den folgenden Befehl ausführen:
cron-apt -s
Besondere Fälle
Server Upgrade automatisch installieren (Achtung! zur Sicherheit spezielle source.list verwenden)
Unter /etc/cron-apt/action.d/3-download das -d (only download) entfernen.
Spezielle source.list
Man kann cron-apt eine spezielle source.list zuweisen, um beispielsweise nur security-updates ein spielen zu können. Dazu erstellt man eine neue source.list im Order /etc/apt/ und passt diese seinen Bedürfnissen an.Änderung der conf
OPTIONS=“-q -o Dir::Etc::SourceList=/etc/apt/security-sources.list“
Aptitude oder apt-file benutzen:
Falls man statt apt-get mehr Aptitude vertraut kann auch dieses verwendet werden.
In der config einfach APTCOMMAND=/usr/bin/aptitude auskommentieren. Bitte aber darauf achten,dass einige Schalten verändert werden müssen, wie beispielsweise „-o quiet“ statt „-q“ bei OPTIONS
Beispiel einer Email bei Server Upgrade
CRON-APT RUN [/etc/cron-apt/config]: Fri Sep 29 04:00:02 CEST 2006 CRON-APT SLEEP: 774, Fri Sep 29 04:12:56 CEST 2006 CRON-APT ACTION: 8-install CRON-APT LINE: dist-upgrade -y -o APT::Get::Show-Upgraded=true Reading Package Lists…
Building Dependency Tree…
The following packages will be upgraded:
libssl0.9.7 openssl
2 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 3168kB of archives.
After unpacking 506kB of additional disk space will be used.
Get:1 http://security.debian.org stable/updates/main libssl0.9.7 0.9.7e-3sarge3 [2265kB]
Get:2 http://security.debian.org stable/updates/main openssl 0.9.7e-3sarge3 [903kB] Fetched 3168kB in 0s (3615kB/s) (Reading database … 27744 files and directories currently installed.) Preparing to replace libssl0.9.7 0.9.7e-3sarge2 (using …/libssl0.9.7_0.9.7e-3sarge3_i386.deb) …
Unpacking replacement libssl0.9.7 …
Preparing to replace openssl 0.9.7e-3sarge2 (using …/openssl_0.9.7e-3sarge3_i386.deb) …
Unpacking replacement openssl …
Setting up libssl0.9.7 (0.9.7e-3sarge3) …
Setting up openssl (0.9.7e-3sarge3) …
Anmerkung zum automatisierten Server Upgrade : Ich habe diesen Artikel zuerst auf ubuntuusers.de verfasst, d.h. dort vorhandene Änderungen oder Anmerkungen speziell für Ubuntu könnten hilfreich sein.