Website-Suche

So bereinigen Sie den Paketcache in Arch Linux


In dieser Anleitung wird erklärt, was ein Paccache-Skript ist und wie man den Paketcache in Arch Linux und seinen Varianten wie EndeavourOS und Manjaro Linux bereinigt.

Was ist Paccache?

Wir alle wissen, dass Pacman, der Standardpaketmanager für Arch Linux und seine Derivate, alle heruntergeladenen Pakete in /var/cache/pacman/pkg/< speichert Verzeichnis.

Wir wissen auch, dass Pacman alte oder deinstallierte Pakete nicht automatisch aus dem Cache löscht. Nach einer bestimmten Zeitspanne wird der Cache-Ordner größer.

Daher wird empfohlen, in Arch Linux regelmäßig den Paketcache zu bereinigen, um Speicherplatz auf der Festplatte freizugeben.

Pacman verfügt über eine integrierte Option zum Entfernen aller zwischengespeicherten Pakete. Sie können die zwischengespeicherten Pakete bereinigen, indem Sie den Befehl sudo pacman -Sc ausführen.

Dieser Befehl entfernt jedoch alle zwischengespeicherten alten Versionen und lässt nur die aktuell installierten Versionen der Pakete verfügbar. Dies ist keine empfohlene Methode.

Denn manchmal möchten Sie vielleicht ein ein bestimmtes Paket auf seine ältere Version herunterstufen. Wenn Sie also alle alten Pakete bereinigt haben, haben Sie keine andere Wahl, sie aus dem Cache-Ordner zu installieren. Sie können sie nur aus den offiziellen Arch Linux-Repositorys installieren.

Hier kommt das Skript Paccache zum Einsatz. Das Paccache-Skript wird vom Pacman-Paket selbst bereitgestellt. Sie müssen sich also nicht um die Installationsschritte kümmern.

Paccache behält standardmäßig die drei aktuellsten Paketversionen bei. Mit Ausnahme der drei neuesten Paketversionen werden alle zwischengespeicherten Versionen jedes Pakets gelöscht, unabhängig davon, ob sie installiert sind oder nicht.

In diesem kurzen Tutorial erfahren Sie, wie Sie den Paketcache in Arch Linux und seinen Derivaten mithilfe des paccache-Skripts ordnungsgemäß bereinigen.

A. Bereinigen Sie den Paketcache in Arch Linux mit Paccache

1. Überprüfen Sie zunächst, wie viele zwischengespeicherte Pakete in meinem Cache-Ordner verfügbar sind.

$ sudo ls /var/cache/pacman/pkg/ | wc -l
3185

2. Wie Sie in der obigen Ausgabe sehen können, habe ich insgesamt 3185 Pakete zwischengespeichert. Lassen Sie mich den gesamten vom Cache-Ordner belegten Speicherplatz überprüfen.

$ du -sh /var/cache/pacman/pkg/
9.7G /var/cache/pacman/pkg/

Derzeit habe ich Pakete mit einer Größe von 9,7 GB zwischengespeichert. Das ist zu viel. Ich möchte nicht alle behalten.

3. Um alle Pakete mit Ausnahme der drei neuesten Versionen zu bereinigen, führen Sie den folgenden Befehl aus:

$ sudo paccache -r
[sudo] password for sk:

==> finished: 854 packages removed (disk space saved: 4.37 GiB)

Sehen? Paccache hat 854 alte und/oder deinstallierte Pakete aus dem Cache entfernt und 4,37 GB Speicherplatz gespart.

4. Lassen Sie mich noch einmal überprüfen, wie viele Pakete noch im Cache-Ordner vorhanden sind.

$ sudo ls /var/cache/pacman/pkg/ | wc -l
2331

Großartig! Jetzt sind im Cache-Ordner 2331 zwischengespeicherte Pakete verfügbar. Dies sind die drei neuesten Versionen jedes zwischengespeicherten Pakets.

5. Überprüfen Sie nun den gesamten vom Cache-Ordner belegten Speicherplatz.

$ du -sh /var/cache/pacman/pkg/
5.4G /var/cache/pacman/pkg/

Großartig! Ich habe bis zu 4 GB Speicherplatz gespart.

6. Möchten Sie immer noch weitere Pakete entfernen? Natürlich kannst du! Mit Paccache können Sie entscheiden, wie viele aktuelle Versionen Sie behalten möchten.

Führen Sie beispielsweise den folgenden Befehl aus, wenn Sie nur eine aktuelle Version behalten möchten:

sudo paccache -rk 1

Dabei gibt k an, die num jedes Pakets im Cache zu behalten.

7. Um alle zwischengespeicherten Versionen deinstallierter Pakete zu entfernen, führen Sie paccache mit dem Flag u erneut aus:

sudo paccache -ruk0

Dabei zeigt das Flag u die deinstallierten Pakete an.

8. Sie können auch den folgenden Pacman-Befehl verwenden, um alle deinstallierten Pakete zu entfernen:

sudo pacman -Sc

9. Um alle Pakete (unabhängig davon, ob sie installiert oder deinstalliert sind) vollständig aus dem Cache zu entfernen, führen Sie den folgenden Befehl aus:

sudo pacman -Scc

Seien Sie bitte vorsichtig, wenn Sie diesen Befehl verwenden. Es gibt keine Möglichkeit, die zwischengespeicherten Pakete nach dem Löschen wiederherzustellen.

Empfohlener DownloadKostenloses E-Book: „Learn Linux in 5 Days“

B. Paketcache in Arch Linux automatisch bereinigen

1. Wenn Sie zu faul sind, den Paketcache manuell zu bereinigen, können Sie diese Aufgabe mithilfe von pacman-Hooks automatisieren. Der Pacman-Hook bereinigt den Paketcache automatisch nach jeder pacman-Transaktion.

Erstellen Sie dazu eine Datei /etc/pacman.d/hooks/clean_package_cache.hook:

sudo mkdir /etc/pacman.d/hooks
sudo nano /etc/pacman.d/hooks/clean_package_cache.hook

Fügen Sie die folgenden Zeilen hinzu:

[Trigger]
Operation = Upgrade
Operation = Install
Operation = Remove
Type = Package
Target = *
[Action]
Description = Cleaning pacman cache...
When = PostTransaction
Exec = /usr/bin/paccache -r

2. Speichern und schließen Sie die Datei. Von nun an wird der Paketcache nach jeder pacman-Transaktion (z. B. Upgrade, Installation, Entfernung) automatisch bereinigt. Sie müssen den Befehl paccache nicht jedes Mal manuell ausführen.

Weitere Informationen finden Sie im Hilfeabschnitt Paccache, indem Sie den folgenden Befehl ausführen:

paccache -h

Verwandte Lektüre:

  • Aktivieren Sie das parallele Herunterladen in Pacman unter Arch Linux
  • So installieren Sie den Paru AUR Helper unter Arch Linux
  • Neueste Spiegelliste mit Reflector in Arch Linux abrufen

Abschluss

In dieser Anleitung haben wir gelernt, wie man den Paket-Cache mit dem Paccache-Skript bereinigt und wie man den Paket-Cache automatisch mit einem Pacman-Hook in Arch Linux bereinigt. Beide Tools helfen Ihnen, Ihr Arch Linux sauber zu halten und sparen viel Speicherplatz.

Verwandte Artikel