linux-arch-alpine-minimal arch-linux package-management pacman cli

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. -S fü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 -Sy ohne u aus. Dies zerstört Abhängigkeiten.
  • Clean: Nutzen Sie den paccache Timer (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