Cache von Pacman automatisch aufräumen
Der Paketmanager Pacman speichert die Pakete unter /var/cache/pacman/pkg. Um bei Problemen ein Downgrade machen zu können, werden dort automatisch keine Pakete entfernt.
Leert man das Verzeichnis nicht regelmäßig kann es sein, dass irgendwann die Festplatte voll ist und man sich wundert was nun schon wieder schiefgegangen ist. Um dies zu vermeiden, kann man sich einen sogenannten Hook erstellen. Mit diesen lassen sich Aktionen bevor oder nachdem etwas mit Pacman gemacht wird ausführen.
Um bei dem Beispiel mit Cache zu bleiben, erstellen wir erst einmal das Verzeichnis /etc/pacman.d/hooks sofern es nicht schon vorhanden ist. In diesem erstellen wir dann eine Datei an deren Ende .hook stehen muss. Also beispielsweise pacman-cache-aufraeumen.hook. In diese kommt dann folgender Inhalt:
[Trigger]
Operation = Remove
Operation = Install
Operation = Upgrade
Type = Package
Target = *
[Action]
Description = Cache von Pacman aufräumen...
When = PostTransaction
Exec = /usr/bin/paccache -rqk2
Im Bereich Trigger wird definiert in welchem Fall das ganze ausgeführt werden soll und wofür der Hook gültig ist. In diesem Fall wird also die Aktion beim Entfernen, Installieren und Aktualisieren aller Pakete ausgeführt.
Im Bereich Action wird angegeben, was ausgeführt wird und wann. In diesem Beispiel wird der Befehl /usr/bin/paccache -rqk2 nach dem Entfernen, Installieren oder Aktualisieren eines Pakets ausgeführt. Der Parameter -rqk2 bewirkt, dass alle Pakete im Cache bis auf die letzten zwei Versionen entfernt werden und dass dies ohne Rückmeldung geschieht.
Diese Artikel könnten auch interessant sein:
- Eigene Paketquelle für Arch Linux im LAN
- Python-Kurs ab dem 27.06.18 im Arch Classroom
- Alle Wege führen zu Arch Linux
- Mandriva ist tot. Lang lebe Arch Linux und Mandriva in der Box
- Eigenen Mirror der Arch-Paketquellen erstellen