Pacman: Arch Package Manager (Artikel 184)
Beherrschung des Pacman-Paketmanagers unter Arch Linux. Erfahren Sie alles über Installation, Updates, Hooks und die Konfiguration von Repositories.
# Pacman Masterclass: Das Paketmanagement-Kraftpaket
TL;DR / Management Summary Pacman ist das Herz von Arch Linux. Es ist bekannt für seine extreme Geschwindigkeit, da es auf einfache, komprimierte Archive (
.tar.zst) setzt. Im Gegensatz zu APT oder DNF nutzt Pacman eine Ein-Buchstaben-Flag-Syntax (z.B.-Sfür Sync). Wer Pacman beherrscht, kann System-Updates in Sekunden durchführen und die Systemintegrität über mächtige Alpm-Hooks automatisieren.
# 1. Einführung & Architektur
Einfachheit in Binärform.
Pacman (Package Manager) verwaltet eine lokale SQLite-Datenbank der installierten Software und synchronisiert diese mit den Master-Indizes der Repositories.
# Die Architektur-Elemente (Mermaid)
graph TD
A[Admin: pacman -S] --> B[Solver: libalpm]
B --> C[Local DB: /var/lib/pacman/local/]
B --> D[Sync DB: /var/lib/pacman/sync/]
B --> E[Package Cache: /var/cache/pacman/pkg/]
E --> F[Filesystem: /usr, /etc, /bin]
G[Hooks: /etc/pacman.d/hooks/] --> B
# 2. Die wichtigsten Kommandos
Kurz, knackig, effizient.
| Aufgabe | Befehl | Erklärung |
|---|---|---|
| System-Update | pacman -Syu |
Sync, Refresh, Upgrade (Der Standard). |
| Installieren | pacman -S <name> |
Lädt und installiert Paket. |
| Suchen | pacman -Ss <name> |
Sucht in den Repositories. |
| Deinstallieren | pacman -Rs <name> |
Entfernt Paket inkl. ungenutzter Deps. |
| Info (Lokal) | pacman -Qi <name> |
Zeigt Details zum installierten Paket. |
| Dateiliste | pacman -Ql <name> |
Listet alle Dateien eines Pakets. |
# 3. Die Konfiguration (pacman.conf)
Den Wächter einstellen.
Datei: /etc/pacman.conf
# Features für Admins
- Color: Aktiviert farbigen Output (bessere Lesbarkeit).
- ILoveCandy: Kleines Easter-Egg (Pacman frisst den Fortschrittsbalken).
- ParallelDownloads: Massiver Performance-Gewinn (z.B.
5). - IgnorePkg: Verhindert Updates für spezifische Pakete (z.B. Kernel).
# 4. Day-2 Operations: Hooks & Cache
Automatisierung und Hygiene.
# Pacman Hooks (Alpm)
Hooks führen Befehle automatisch nach einer Transaktion aus.
Beispiel: Backup der Boot-Partition nach jedem Kernel-Update.
Datei: /etc/pacman.d/hooks/mirror-backup.hook
# Cache Management
Pacman löscht alte Versionen nicht automatisch. /var/cache/pacman/pkg kann GB-weise Platz fressen.
# Löscht alle gecachten Pakete außer die letzten 3 Versionen
sudo paccache -r
# 5. Troubleshooting & “War Stories”
Wenn die Datenbank streikt.
# Story 1: “Die gesperrte Datenbank”
Symptom: pacman bricht ab mit “error: could not lock database: File exists”.
Ursache: Ein vorheriger pacman-Aufruf wurde hart abgebrochen.
Lösung: Wenn kein anderer pacman-Prozess läuft: sudo rm /var/lib/pacman/db.lck.
# Story 2: “Signature is unknown trust”
Symptom: pacman -Syu schlägt fehl, weil GPG-Keys nicht verifiziert werden können.
Ursache: Der archlinux-keyring ist veraltet.
Lösung: Erst nur den Keyring updaten, dann das System:
sudo pacman -Sy archlinux-keyring && sudo pacman -Su
# 6. Fazit & Empfehlung
- Kein Teil-Update: Führen Sie niemals
pacman -Syohneuaus. Dies zerstört Abhängigkeiten. - Clean: Nutzen Sie den
paccacheTimer (systemctl enable paccache.timer), um die Disk sauber zu halten. - Audit: Nutzen Sie
pacman -Qk, um zu prüfen, ob Dateien im Dateisystem fehlen, die eigentlich installiert sein sollten.
# Anhang: Cheatsheet
| Aufgabe | Befehl |
|---|---|
| Verwaiste Pakete finden | pacman -Qdt |
| Alle verwaisten löschen | pacman -Rs $(pacman -Qdtq) |
| Paket-Inhalt ohne Download | pacman -Fl <name> (erfordert pkgfile) |
| Herkunft einer Datei | pacman -Qo /pfad/zu/datei |
| Datenbank reparieren | pacman -D --check |
| Mirror-Speed testen | reflector |
| Log-Datei | /var/log/pacman.log |