Auto-Updates für Ubuntu

Ziel: Automatische Updates und Upgrades

Zielgruppe: System-Einrichter für die Gruppen: Anwender, Linux-Anfänger und Windows-Umsteiger

Motivation: Obwohl Linux ein pflegeleichtes Betriebssystem ist, kann es für Leute die erste Erfahrungen sammeln, eine Erleichterung sein etwas Kontrolle abzugeben.

Voraussetzung:

  • Ein Debian-Linux oder ein Derivat, also Ubuntu, Mint und deren Derivate
  • Kenntnisse zum Behandeln von Systemdateien
  • Kenntnisse von root, su und sudo

Inhaltsverzeichnis

„Update“ und „Upgrade“ unter Linux

Für das allgemeine Verständnis müssen die Begriffe geklärt werden.

Das „Update“ unter Linux ist das Abgleichen der alten Paketliste auf dem PC und der aktuellen Paketliste in den Online-Repositorien.

„Upgrade“ ist unter Linux das aktualisieren der vorhandenen Paketversionen bis zum triggern.

Nachfolgend setzte ich für beides zusammen „Update“.

Gruppe „updater“

  • Gruppe „updater“ erstellen
sudo groupadd updater
  • Benutzer zur Gruppe „updater“ hinzufügen
sudo usermod -aG updater <BENUTZERNAME>

Konfigurationsdateien

Im wesentlichen sind in drei Dateien die Inhalte anzupassen.

  1. /var/lib/polkit-1/localauthority/10-vendor.d/com.ubuntu.desktop.pkla
  2. /etc/apt/apt.conf.d/10periodic
  3. /etc/apt/apt.conf.d/50unattended-upgrades

Das Bearbeiten dieser Dateien ist nur mir erweiterten Rechten möglich.

com.ubuntu.desktop.pkla

Mit dieser Anpassung wird es normalen Benutzern erlaubt automatische Updates durch zuführen.

Pfad: /var/lib/polkit-1/localauthority/10-vendor.d/com.ubuntu.desktop.pkla

Der folgende Inhalt dieser Datei ist zu ändern:

[Update already installed software]
Identity=unix-group:admin;unix-group:sudo
Action=org.debian.apt.upgrade-packages
ResultActive=yes

Angepasster Inhalt:

[Update already installed software]
Identity=unix-group:admin;unix-group:sudo;unix-group:updater
Action=org.debian.apt.upgrade-packages
ResultActive=yes

10periodic

In dieser Datei werden die Zeiten und Intervalle eingetragen.

Pfad: /etc/apt/apt.conf.d/10periodic

Der folgende Inhalt dieser Datei ist zu ändern:

APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Download-Upgradeable-Packages "0";
APT::Periodic::AutocleanInterval "0";

Angepasster Inhalt:

APT::Periodic::RandomSleep "30";
APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Download-Upgradeable-Packages "1";
APT::Periodic::AutocleanInterval "1";

Den ersten Eintrag habe ich zusätzlich eingetragen, um den System nach dem Login 30 Sekunden Zeit zu geben für das Anmelden aller grundlegenden Dienste.

Der zweite Eintrag holt schon mal die aktuellen Paketlisten und das täglich, was mit der Ziffer „1“ aktiviert ist.

Jetzt kommt der entscheidende Eintrag, das tägliche, „1“, installieren der aktuellen Software.

Zum Schluss wird noch aufgeräumt.

50unattended-upgrades

Nun wird ganz spezifisch das Betriebssystem benannt, welches automatisch aktualisiert werden soll.

Pfad: /etc/apt/apt.conf.d/50unattended-upgrades

Der folgende Inhalt dieser Datei ist zu ändern:

// "${distro_id} ${distro_codename}-updates";

Angepasster Inhalt:

"${distro_id} ${distro_codename}-updates";

Trockenlauf

Um die ganze bisherige Arbeit zu testen, gibt es tatsächlich einen „Trockenlauf“.

sudo unattended-upgrades --dry-run

Logbücher der automatischen Aktualisierung

Folgende Dateien werden durch die automatische Aktualisierung erstellt:

  1. /var/log/unattended-upgrades/unattended-upgrades.log
  2. /var/log/unattended-upgrades/unattended-upgrades-dpkg.log
  3. /var/log/unattended-upgrades/unattended-upgrades-shutdown.log

Das erste Protokoll ist das interessanteste, da es schnell die wichtigsten Informationen zur Verfügung stellt.

Das zweite Protokoll zeigt die Aktualisierung im Detail an.

Bei Bedarf, könnte man sich zum Beispiel mit einem Script das erste Protokoll nach dem Start anzeigen lassen.

Übrigens, die Warnung in der Datei „/var/log/unattended-upgrades/unattended-upgrades.log“ kann vernachlässigt werden. Für mich sieht das so aus, das Ubuntu sich nicht in das Infotainment von Debian einordnet, siehe Titelbild.

Aktualisierung des Artikels

2022-02-25; Die Erstellung der Gruppe „updater“ wurde hinzugefügt. Danach wird der zuständige User in diese Gruppe eingetragen.


Ihr Kom­men­tar [Pos1] Sei­ten­an­fang