Benutzer-Werkzeuge

Webseiten-Werkzeuge


arch:paketverwaltung:paccache

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
arch:paketverwaltung:paccache [2020/01/14 18:49] – fix Typos gahsularch:paketverwaltung:paccache [2024/05/17 10:46] (aktuell) – Seite umgezogen nach tools:dienst:paccache:paccache gahsul
Zeile 1: Zeile 1:
-====== Paccache ====== 
- 
-paccache aus dem Paket [[https://www.archlinux.org/packages/community/x86_64/pacman-contrib/|pacman-contrib]] ist ein Programm um den [[:arch:paketverwaltung:pacman|]] Cache zu bereinigen. 
- 
-Im Gegensatz zu pacman's eingebauter Reinigungs-Methode (den kompletten Cache zu löschen). Geht paccache intelligenter vor, so das eine bestimmte Anzahl an Paket Versionen zurückgehalten werden, um ein Downgrade eines Programms zu ermöglichen. 
- 
-===== Installation ===== 
- 
-paccache befindet sich mit ein paar anderen Tools in dem Paket <nowiki>pacman-contrib</nowiki>: 
- 
-<code bash> 
-# pacman -S pacman-contrib 
- 
-</code> 
- 
-===== Benutzung ===== 
- 
-Um die Syntax und alle verfügbaren Parameter zu sehen, führt man folgenden Befehl aus: 
- 
-<code bash> 
-$ paccache --help 
- 
-</code> 
- 
-Der Aufruf des Programms ist nach folgendem Schema aufgebaut: 
- 
-<code bash> 
-paccache <Operation> [Optionen] [Ziele…] 
-</code> 
- 
-==== verfügbare Operationen ==== 
- 
-In folgender Tabelle stehen die verfügbaren Operationen. Für weitere Optionen siehe die manpages [[https://jlk.fjfi.cvut.cz/arch/manpages/man/community/man-pages-de/paccache.8.de|paccache(8)]] 
- 
-^Kurzform^Langform^Beschreibung| 
-|-d|–dryrun  |Führt einen »Trockenlauf« aus, wobei nur nach potenziell zu entfernenden Paketen gesucht wird.| 
-|-m|–move <Verzeichnis>|Verschiebt potenziell zu entfernende Pakete in das angegebene Verzeichnis.| 
-|-r|–remove|Entfernt die Pakete aus dem Zwischenspeicher, die als potenziell zu entfernen identifiziert wurden.| 
- 
-==== Beispiele ==== 
- 
-Folgender Aufruf bereinigt den pacman Cache und behält die letzten 3 Paket Versionen im Cache (Standard Wert) 
- 
-<code bash> 
-# paccache -r 
- 
-</code> 
- 
-Folgender Aufruf verschiebt alle Pakete aus dem Cache, die nicht mehr installiert sind, in das Verzeichnis <nowiki>$HOME/paccache</nowiki> 
- 
-<code bash> 
-# paccache -m "$HOME/paccache" -uk0 
- 
-</code> 
- 
-===== Automatisierung ===== 
- 
-==== Mittels systemd ==== 
- 
-paccache bringt einen <nowiki>paccache.timer</nowiki> für systemd mit. Dieser führt einmal wöchentlich paccache aus, um alle Paket Versionen bis auf die letzten 3 zu entfernen. 
- 
-Dieser wird mit folgendem Befehl aktiviert: 
- 
-<code bash> 
-# systemctl enable paccache.timer 
-</code> 
- 
-=== paccache.service Optimierungen === 
- 
-Der <nowiki>paccache.service</nowiki> entfernt in seiner Standardkonfiguration alle Pakete bis auf die letzten 3 Versionen. Da dieses Verhalten aber nicht optimal ist, z. B. wenn die Pakete von nicht mehr installierten Programme komplett gelöscht werden sollen, kann man an dem <nowiki>paccache.service</nowiki> folgende Optimierungen vornehmen: 
- 
-Um dabei den Originalen Zustand von <nowiki>ppaccache.service</nowiki> nicht zu verändern arbeitet man am besten mit einem [[:arch:init:systemd#drop-in_files|Drop-in File]] dies hat den Vorteil, falls <nowiki>paccache.service</nowiki> aktualisiert wird pacman keine <nowiki>.pacnew</nowiki> Datei anlegen muss. Da dir original Datei unverändert bleibt. 
- 
-<code bash> 
-systemctl edit paccache.service 
-</code> 
- 
-In dem sich öffnenden Editor werden folgende Zeilen eingefügt und gespeichert: 
- 
-<code bash> 
-[Service] 
-Type=oneshot 
-ExecStart= 
-ExecStart=/usr/bin/paccache --remove --uninstalled --keep 0 
-ExecStart=/usr/bin/paccache --remove 
- 
-</code> 
- 
-  * Die erste <nowiki>ExecStart=</nowiki> Zeile muss leer bleiben um die Variable vom echten <nowiki>paccache.service</nowiki> zu leeren. Überschreiben funktioniert nicht, weil diese Variable mehrfach verwendet werden kann. 
-  * Die zweite <nowiki>ExecStart=</nowiki> Zeile löscht alle Pakete von nicht mehr installierten Programmen aus dem Cache 
-  * Die dritte <nowiki>ExecStart=</nowiki> Zeile löscht dann alle übrig gebliebenen Pakete bis auf die letzten 3 Versionen von jedem Paket. 
- 
-Falls die Veränderungen wieder rückgängig gemacht werden sollen. Wird folgender Befehl verwendet: 
- 
-<code bash> 
-systemctl revert paccache.service 
- 
-</code> 
- 
-===== Siehe auch ===== 
- 
-[[https://jlk.fjfi.cvut.cz/arch/manpages/man/community/man-pages-de/paccache.8.de|paccache(8)]] paccache Handbuch \\ 
-[[https://wiki.archlinux.org/index.php/Pacman#Cleaning_the_package_cache|archlinux.org Wiki]] \\ 
-[[https://wiki.archlinux.de/title/Pacman#Paccache|archlinux.de Wiki]] \\ 
  
arch/paketverwaltung/paccache.1579027782.txt.gz · Zuletzt geändert: 2020/01/14 18:49 von gahsul