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: