Zypper – Vier Tipps für ein aufgeräumtes System mit der openSUSE-Paketverwaltung

Jede Distribution hat ihre eigene Paketverwaltung. Bei openSUSE ist es Zypper, das die Abhängigkeiten etc. der Pakete im RPM-Format auflöst. Zypper ist mächtig und sehr flexibel. Drei Befehle und eine Einstellung helfen, ein Tumbleweed-System aufgeräumt zu halten.

Standardmäßig installiert openSUSE obligatorische und empfohlene Abhängigkeiten. Letztere sind für einige Komponenten einer Software nützlich, aber nicht zwingend notwendig. Wenn man ein wenig Ahnung hat oder bereit ist, sich diese anzueignen, sollte man die automatische Installation der empfohlenen Abhängigkeiten deaktivieren. Diese ziehen nämlich oft viel unnötigen Ballast mit sich, den man nur für ganz marginale Funktionen mancher Software benötigt.

Das geschieht über eine Anpassung der Konfigurationsdatei /etc/zypp/zypp.conf:

##
## Whether only required packages are installed.
##
## Recommended packages, will not be regarded.
##
## Valid values: boolean
## Default value: false
##
solver.onlyRequires = trueCode-Sprache: PHP (php)

Hier muss das Auskommentierungszeichen # entfernt und der Wert auf true gesetzt werden.

Möchte man Anwendungen deinstallieren, ist es hilfreich, auch alle Abhängigkeiten zu entfernen. Dies geschieht mit folgender Option:

# zypper rm --clean-deps <Paketname>Code-Sprache: HTML, XML (xml)

Trotzdem kann es bei RR-Systemen immer mal wieder Überbleibsel geben. Diese können mit folgenden Kommandos gefunden werden:

Zunächst können nicht mehr benötigte Abhängigkeiten identifiziert werden.

# zypper packages --unneeded Code-Sprache: PHP (php)

Die Ausgabe kann wie folgt aussehen:

# zypper packages --unneeded 
Repository-Daten werden geladen...
Installierte Pakete werden gelesen...
S  | Repository             | Name        | Version  | Arch
---+------------------------+-------------+----------+-------
i  | Haupt-Repository (OSS) | dialog-lang | 1.3-12.1 | noarchCode-Sprache: PHP (php)

Intellektuell sollte man natürlich prüfen, ob die Angabe stimmig ist. Das Language-Pack im Beispiel möchte ich z.B. behalten. Nicht mehr benötigte Pakete können anschließend auf dem üblichen Weg entfernt werden.

Es kann auch immer mal sein, dass Pakete aus den Paketquellen entfernt werden. Solche Pakete können mit folgendem Befehl identifiziert werden:

# zypper packages --orphanedCode-Sprache: PHP (php)

Die Ausgabe kann wie folgt aussehen:

# zypper packages --orphaned 
Repository-Daten werden geladen...
Installierte Pakete werden gelesen...
S  | Repository | Name           | Version     | Arch
---+------------+----------------+-------------+-------
i+ | @System    | synology-drive | 7.5.0-16085 | x86_64Code-Sprache: PHP (php)

Wie im Beispiel zu sehen ist, betrifft das auch Pakete, die der Anwender bewusst an der Pakrtverwaltung vorbei installiert hat. Deshalb auch hier nicht kopflos einfach alles entfernen.

Cruiz
Cruizhttps://curius.de
Moin, meine Name ist Gerrit und ich betreibe diesen Blog seit 2014. Der Schutz der digitalen Identität, die einen immer größeren Raum unseres Ichs einnimmt ist mir ein Herzensanliegen, das ich versuche tagtäglich im Spannungsfeld digitaler Teilhabe und Sicherheit umzusetzen. Die Tipps, Anleitungen, Kommentare und Gedanken hier entspringen den alltäglichen Erfahrungen.
  1. Zypper ist wirklich ein geniales Tool.
    Muss derzeit leider mit einen Debian/Ubuntu Unterbau arbeiten.

    Wirklich keine Freude und somit leider auch eine Schande, dass es dem openSUSE Projekt so schlecht geht.

    Beste Grüße

Kommentieren Sie den Artikel

Ergänzungen dienen der Diskussion über die Inhalte des Artikels. Nachfragen, Anmerkungen und Ergänzungen sind dezidiert erwünscht. Ergänzungen werden vor der Veröffentlichung moderiert. Wir behalten uns vor Kommentare ohne inhaltlichen Bezug oder abseitige Diskussionen nicht zu veröffentlichen.

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Weitere Artikel