Linux automatisch aktualisieren
Einleitung
In diesem Beitrag gehe ich drauf ein, wie wir mithilfe des Paketes cron-apt unseren Debian Server automatisch aktualisieren. Damit könnenkönnen wir sicherstellen, dass wenn wir im Urlaub oder nicht anwesend sind, unser Server immer auf dem aktuellen Stand ist.
Installation des Paketes
Dazu müssenmüssen wir zuerst die Paketquellen aktualisieren und gegebenenfalls Updates installieren, wenn diese vorhanden sind.
sudo apt update && sudo apt upgrade -y
Im nächstennächsten Schritt installieren wir jetzt das Paket cron-apt.
Dazu geben wir folgenden Befehl in die Konsole ein.
sudo apt install cron-apt -y
Konfiguration von cron-apt
Um unsere Updates automatisch installieren zu lassen, müssenmüssen wir cron-apt jetzt nur noch konfigurieren. Damit wird dann das Skript jeden Morgen um 4 Uhr Morgens gestartet, und spielt die Updates ein. (Die Uhrzeit kann noch geändertgeändert werden).
Wir öffnenöffnen zuerst die Standardkonfiguration. Wir öffnenöffnen die Datei 3-download mit einem Editor unserer Wahl. Ich verwende hier nano.
sudo nano /etc/cron-apt/action.d/3-download
In dieser Datei befindet sich schon ein Befehl. Dieser Befehl wird automatisch ausgeführt,ausgeführt, wenn, cron-apt gestartet wird. Dies geschieht dann automatisch, wenn die festgelegte Uhrzeit erreicht wird, oder wenn wir den Befehl sudo cron-apt -s
eingeben.
Die Datei sollte folgenden Inhalt haben:
autoclean -y
dist-upgrade -d -y -o APT::Get::Show-Upgraded=true
Bei diesem Befehl werden die allgemeinen Updates nur heruntergeladen, aber nicht installiert! Wenn wir möchten,möchten, dass die Updates automatisch installiert werden, müssenmüssen wir nur den Parameter -d entfernen. Dieser gibt an, dass die Updates nur heruntergeladen werden, und wir die Installation selbst in die Hand nehmen müssen.müssen.
Wenn die Updates automatisch installiert werden sollen, und man darüberdarüber wegsieht, dass es dann zu Problemen kommen kann, durch beispielsweise zurückgezogenezurückgezogene Pakete, kann man den nachstehenden Befehl anstelle des vorhandenen verwenden.
autoclean -y
dist-upgrade -y -o APT::Get::Show-Upgraded=true
Wenn wir beispielsweise wollen, dass die normalen Updates nicht automatisch installiert werden, aber Security Updates automatisch installiert werden sollen, könnenkönnen wir die DurchläufeDurchläufe durch eigene Skripte anpassen. Dazu müssenmüssen wir nur in demselben Verzeichnis eine Datei mit einer fortlaufenden Nummer und einer Beschreibung erstellen.
sudo nano /etc/cron-apt/action.d/10-securityupdates
In der Datei fügenfügen wir folgenden Inhalt ein:
upgrade -y -o APT::Get::Show-Upgraded=true
Damit jetzt unsere Datei auch verwendet wird, wenn cron-apt startet, müssenmüssen wir noch eine Konfigurationsdatei anlegen. Dazu legen wir wieder eine Datei mit dem Namen unser vorherigen angelegten Datei an. Dabei verändertverändert sich nur der Ordner, in dem die Datei angelegt wird.
sudo nano /etc/cron-apt/config.d/10-securityupdates
Dort fügenfügen wir folgenden Code ein. Dabei müssenmüssen wir aber die entsprechenden Pfade zu den Paketquellen Listen angeben.
OPTIONS="-q -o Dir::Etc::SourceList=/etc/apt/sources.list.d/security.list -o Dir::Etc::SourceParts=\"/dev/null\""
AusführungszeitAusführungszeit ändernändern
MöchtenMöchten wir jetzt zuletzt noch ändern,ändern, wann cron-apt ausgeführtausgeführt wird, müssenmüssen wir die entsprechende Konfigurationsdatei öffnen.öffnen. Dazu verwenden wir den folgenden Befehl:
sudo nano /etc/cron.d/cron-apt
Wir könnenkönnen dort jetzt die Zeit angebenangeben, wann cron-apt ausgeführtausgeführt werden soll. Die Zeit geben wir überüber Syntax der Crontabs / Cronjobs an.
Wenn wir jetzt überprüfenüberprüfen wollen, ob unser Programm sauber durchläuft,durchläuft, könnenkönnen wir es manuell starten, mit dem folgenden Befehl.
sudo cron-apt -s
Im Weiteren legt das Programm auch Logfiles ab. Diese könnenkönnen wir unter /var/log/cron-apt
einsehen.