Ein paar irrelevante Tutorials

Updates

Hier beschreibe ich das Updaten von Debian- und Ubuntuservern. Wie man Proxmox Virtual Environments aktuell hält, habe ich unter https://tutorials.kernke.koeln/serveranwendungen/paperless-ngx.html beschrieben. Das Updaten von Docker-Containern habe ich beispielhaft unter https://tutorials.kernke.koeln/serveranwendungen/paperless-ngx.html beschrieben.

Updates manuell installieren

Wenn man manuell prüfen möchte, ob für das System updates vorliegen, dann verwendet man dazu den Befehl

    sudo apt update

der dafür sorgt, dass die Paketverwaltung aktualisiert wird. Damit werden aber keine Updates installiert. Möchte man wissen, welche Updates verfügbar sind, dann kann man das mit dem Befehl

    sudo apt list --upgradable

tun. Zweckmäßig kann es auch sein, die Auflistung der zu aktualisierenden Pakete abzuspeichern, um ggf. Updates, die Probleme machen, wieder zurück zu nehmen. Dazu gibt man ein:

sudo apt list --upgradable >updates.txt

Dann kann man bei Bedarf die gewünschten Updates mit 

    sudo apt upgrade [paketname]

installieren. Ohne Angabe von Paketnamen werden alle Pakete, für die neue Versionen vorliegen, aktualisiert. Wenn man keinen Anlass hat, bei Updates einzelne Pakete auszulassen, dann kann man auch gleich die Befehlskombination

    sudo apt update && sudo apt upgrade -y

verwenden, um ohne Nachfrage alles zu aktualisieren, für das es aktuelle Pakete gibt.

Ausnahmefall: Rücknahme von Updates

Sollte durch ein Update einmal etwas kaputt gehen (was so gut wie nie der Fall ist), dann muss man ggf. die störenden Pakete wieder auf die vorherige Version zurück setzen (downgraden). Wenn man, wie oben empfohlen, die Ausgabe der zu aktualisierten Pakete, die ja auch die Ausgangsversionen enthält, gesichert hat, dann hat man Glück. Ansonsten muss man im Verzeichnis „/var/cache/apt/archives/“ nachsehen, welches die letzten funktionierenden Paketversionen waren. Dazu setzt man auf der Konsole den Befehl

sudo cat /var/log/apt/history.log

ab. Hat zum Beispiel das Update von gnupg-l10n Probleme bereitet, dann sucht man in der Ausgaben des obigen Befehls nach den entsprechenden Einträgen und findet (u.a.)

gnupg-l10n:amd64 (2.4.4-2ubuntu17, 2.4.4-2ubuntu17.2)

Mir dem Befehl

sudo apt install gnupg-l10n=2.4.4-2ubuntu17

kann man dann den Downgrade anstoßen.

Automatische Updates

Wenn man keine Bedenken hat, alle Pakete immer zu aktualisieren, wenn es neue Versionen gibt, dann kann man die Updates auch automatisieren. Das sollte man aber nur tun, wenn man regelmäßige Snapshotsicherungen durchführt, die man zurückspielen kann, wenn einem ein Update etwas kaputt macht. Für automatische Updates muss das Paket unattended-upgrades installiert werden:

    sudo apt-get install unattended-upgrades 

 Mit dem Befehl

    sudo dpkg-reconfigure -plow unattended-upgrades 

kann man nachträglich noch einstellen, ob man das wirklich tun will (???). Wichtiger sind die Parameter in der Datei /etc/apt/apt.conf.d/10periodic, die man erst anlegen muss mit dem Befehl

    sudo nano /etc/apt/apt.conf.d/10periodic

 Dort müssen mindestens die Einträge

    APT::Periodic::Update-Package-Lists "1";
    APT::Periodic::Download-Upgradeable-Packages "1";
    APT::Periodic::Unattended-Upgrade "1";

vorgenommen werden. In der Datei /etc/apt/apt.conf.d/50unattended-upgrades können weitere Einstellungen vorgenommen werden. Hier sollten die beiden "/" vor "  "${distro_id} ${distro_codename}-updates"; entfernt werden, damit nicht nur Sicherheitsupdates installiert werden. Log-Dateien werden im Verzeichnis /var/log/unattended-upgrades/ gespeichert.

Automatische Reboots

In der Datei /etc/apt/apt.conf.d/10periodic könnte man angeben, dass das System nach jedem Update rebootet. Das ist aber nicht nötig, schließlich handelt es sich nicht um ein Windoof-System. Von Zeit zu Zeit tut aber ein Reboot auch einem Linux-Server gut, um manche Updates auch wirksam zu machen. Das kann man mit einem Cronjob automatisieren. Dazu bearbeitet man z.B. die Datei /etc/contab mit

    sudo nano /etc/crontab

und fügt eine neue Zeile

    0 1     * * 0   root    /sbin/shutdown -r now

Ein. Dann bootet der Rechner an jedem Sonntag um 1:00 Uhr neu. Sollte gerade ein Update laufen, dann würde der Reboot verzögert, bis das Update abgeschlossen ist. Nun braucht man sich um nichts weiter zu kümmern, außer gelegentlich die Logfiles zu prüfen.