Einleitung
In produktiven Ubuntu-Umgebungen gefährden unkontrollierte Software-Updates häufig die Systemstabilität oder brechen spezifische Abhängigkeiten. Mit dem bordeigenen Dienstprogramm apt-mark lässt sich der Lebenszyklus installierter Software exakt steuern: Sie können Versionen gegen Aktualisierungen sperren (Hold-Status) und festlegen, ob Pakete als manuelle Installation oder reine Abhängigkeit geführt werden. Die folgende Anleitung zeigt praxisnah, wie Sie Versionskonflikte abwenden und verwaiste Pakete gezielt verwalten.
Ungewollte Upgrades blockieren: Pakete via hold und showhold sichern
Um den Sperrvorgang an einem konkreten Beispiel nachzuvollziehen, aktualisieren wir zunächst die lokalen Paketquellen und richten das Dienstprogramm curl auf dem System ein: sudo apt-get update -qq && sudo apt-get install -y curl.

Über die Anweisung sudo apt-mark hold curl wird das Tool im aktuellen Zustand verankert. Selbst routinemäßige Wartungsbefehle wie apt upgrade oder apt dist-upgrade übergehen das Programm nun konsequent.
⚙️ [Die wichtigsten Befehlsoptionen im Überblick]
hold : Setzt das gewählte Paket auf den Status „Zurückgehalten“ und verhindert künftige Upgrades.unhold : Hebt die Sperre wieder auf, sodass Aktualisierungen wieder wie gewohnt eingespielt werden.showhold : Listet sämtliche Softwarepakete auf, die derzeit systemweit eingefroren sind.auto : Markiert ein Paket als automatisch installierte Abhängigkeit.manual : Kennzeichnet ein Paket als explizit durch den Administrator installiert.showauto : Gibt alle Pakete aus, die als automatische Abhängigkeiten geführt werden.showmanual : Zeigt alle Programme an, die manuell auf das System gelangt sind.

Mit dem Kontrollbefehl apt-mark showhold rufen Administratoren die Liste aller blockierten Pakete auf.
Die Ausgabe belegt unmissverständlich, dass curl jetzt erfolgreich in der Sperrliste geführt wird.

Versionssperren aufheben: Software über unhold wieder freigeben
Sobald Kompatibilitätstests abgeschlossen sind oder Sicherheitsaktualisierungen eingespielt werden müssen, lässt sich die Sperre per sudo apt-mark unhold curl wieder entfernen.
Die Rückmeldung Canceled hold on curl. bestätigt, dass der Paketmanager die Software künftig wieder regulär aktualisiert.

Ein erneuter Aufruf von apt-mark showhold dient der Verifikation des Systemstatus.
Da keine Einträge mehr zurückgegeben werden, greift für curl wieder die normale Aktualisierungsroutine.

Installationsattribute steuern: Abhängigkeiten via markauto und unmarkauto verwalten
Um den Unterschied zwischen manuell installierter Software und reinen Abhängigkeiten zu demonstrieren, installieren wir als Testobjekt den JSON-Prozessor jq via sudo apt-get install -y jq.

Führt man sudo apt-mark markauto jq aus, ändert das System das interne Flag: jq gilt fortan nicht mehr als gezielt angefordertes Programm, sondern als reine Abhängigkeit.
Dies hat zur Folge, dass ein nachfolgendes apt autoremove das Paket automatisch deinstalliert, sobald keine andere Software mehr darauf angewiesen ist.

Mithilfe von apt-mark showauto jq lässt sich prüfen, ob das Attribut für automatische Abhängigkeiten aktiv ist.
Erscheint jq in der Ausgabezeile, wurde der Statuswechsel fehlerfrei in der Paketdatenbank vermerkt.

Soll ein Werkzeug hingegen dauerhaft vor Bereinigungsaktionen geschützt bleiben, kehrt sudo apt-mark unmarkauto jq den Zustand um.
Damit wird das Programm wieder als manuelle Installation eingestuft und bleibt selbst dann erhalten, wenn übergeordnete Softwarekomponenten entfernt werden.

Abschließend verifiziert apt-mark showmanual jq, ob das Paket wieder als explizit installiert eingestuft ist.
Die Ausgabe des Namens bestätigt die erfolgreiche Rückkehr in den manuellen Verwaltungsmodus.

Systemweite Bestandsaufnahme: Manuelle und automatische Pakete filtern
Der Aufruf apt-mark showmanual | head -n 10 filtert die ersten zehn Einträge aller Programme heraus, die eigenhändig durch den Administrator installiert wurden.
Neben den grundlegenden Systemwerkzeugen tauchen hier auch zuvor manuell eingerichtete Tools wie curl auf.

Im Gegensatz dazu listet apt-mark showauto | head -n 10 die ersten zehn automatisch hinzugezogenen Bibliotheken und Komponenten auf.
Diese Auflistung offenbart das Gerüst an Systemabhängigkeiten, die im Hintergrund für reibungslose Dienstabläufe sorgen.

Das Zusammenspiel aus gezieltem Einfrieren und genauer Kennzeichnung von Paketattributen mittels apt-mark bietet Linux-Administratoren maximale Kontrolle über das Betriebssystem. Nutzen Sie diese Mechanismen, um Ihre Infrastruktur effektiv vor unvorhergesehenen Seiteneffekten bei Updates zu schützen.