Pacmans installierte Pakete und Pacmans Cache aufräumen

Ungenutzte Pakete entfernen

Beim Deinstallieren von Pakete sollte immer der Parameter -Rs anstatt nur -R verwendet werden, um auch alle nicht mehr benötigten Pakete mit zu deinstallieren:

$ pacman -Rs paketname

Eine Liste aller Pakete, die nicht mehr benötigt werden erhält man mit dem Kommando:

$ pacman -Qtdq

Man kann diese Liste auch gleich als Eingabe für das Entfernen durch pacman geben:

$ sudo pacman -Rns $(pacman -Qtdq)

Ob wirklich all die daraufhin gelisteten Pakete wirklich deinstalliert werden, sollte man unbedingt vorher überprüfen.

Pacman Cache säubern

Mit der Zeit sammeln sich auf einem Archlinuxsystem einige Pakete im Verzeichnis /var/cache/pacman/pkg/. Das sind vor allem verschiedene Versionen jemals installierter (und mittlerweile auch deinstallierter) Pakete.

Am einfachsten ist es die Pakete aufräumen zu lassen. Das geht mit dem Tool paccache. Mit den folgenden beiden Kommandos kann man zunächst eine Trockenübung machen, ob sich das Aufräumen überhaupt lohnt:

$ paccache -d

==> finished dry run: 4639 candidates (disk space saved: 19.6 GiB)
$ paccache -duk0

==> finished dry run: 476 candidates (disk space saved: 4.31 GiB)

Der erste Aufruf von paccache mit dem Parameter -d zählt die Anzahl der installierten Pakete, die gelöscht werden können. Dabei werden die drei neuesten Paketversionen noch behalten, sodass man im Zweifelsfall noch zu einer älteren Version downgraden kann. Beim zweiten Aufruf mit dem Parameter -duk0 werden alle nicht mehr installierten Pakete in allen Versionen gezählt und der dafür verbrauchte Speicherplatz gemessen.

Da sich bei mir das Aufräumen des Caches von pacman durchaus lohnt, kann ich die paccache Kommandos nun scharfschalten, in dem ich beim Parameter das d durch ein r ersetze:

$ paccache -r ; paccache -ruk0
==> Privilege escalation required
[sudo] Passwort: 

==> finished: 4639 packages removed (disk space saved: 19.6 GiB)
==> Privilege escalation required

==> finished: 239 packages removed (disk space saved: 1.34 GiB)

Für das eigentliche Löschen wird nun auch das Passwort benötigt, weil root Rechte gebraucht werden, um die Pakete zu löschen. Die Differenz zwischen dem Trockenlauf und dem eigentlichen Löschen der Pakete, die nicht mehr installiert sind, kann ich mir im Moment nicht erklären. Denn schließlich sind auch keine Löschkandidaten mehr gefunden worden:

$ paccache -d ; paccache -duk0
==> no candidate packages found for pruning
==> no candidate packages found for pruning

Weitere Infos

Weitere Infos gibt es wie immer im Archlinux Wiki: