Arch Linux Maintenance: System Updates (Artikel 186)
Der definitive Wartungs-Plan für Arch Linux. Erfahren Sie den Umgang mit .pacnew Dateien, die Optimierung der Paket-Caches und die Absicherung von Rolling-Release-Updates.
# Arch Linux Maintenance: Ein stabiles Rolling Release betreiben
TL;DR / Management Summary Wer Arch Linux vernachlässigt, wird mit einem instabilen System bestraft. Im Gegensatz zu SLES oder Debian erfordert ein Rolling Release aktive Pflege. Die drei Säulen der Arch-Wartung sind: 1. News lesen vor jedem Update, 2. .pacnew Dateien mergen und 3. Den Paket-Cache regelmäßig leeren. Wer diese Routine befolgt, betreibt ein System, das jahrelang ohne Neuinstallation performant läuft.
# 1. Einführung & Konzepte
Wartung als Prozess.
Bei Arch gibt es keine “Release-Sprünge”. Das System wandert kontinuierlich durch die Zeit. Fehler entstehen meist dann, wenn Konfigurationsänderungen der Entwickler nicht übernommen werden.
# Der Wartungs-Loop (Mermaid)
graph TD
A[Start: Update Cycle] --> B[Check archlinux.org News]
B --> C[Backup / Snapshot]
C --> D[Full System Sync: pacman -Syu]
D --> E[Check for .pacnew Files]
E --> F[Merge Config Changes]
F --> G[Reboot if Kernel/Systemd updated]
G --> H[Cleanup Cache: paccache]
# 2. Der Update-Prozess (Pro-Level)
Sicher aktualisieren.
# Schritt 1: News prüfen
Manche Updates erfordern manuelle Eingriffe (z.B. Pfad-Verschiebungen). Diese stehen in den News auf archlinux.org.
# Schritt 2: Der Sync
sudo pacman -Syu
Gefahr: Brechen Sie ein Update niemals mitten im Vorgang ab! Dies kann die RPM/Pacman-Datenbank zerstören oder das System in einem unbootbaren Zustand hinterlassen.
# 3. Die .pacnew Dateien
Die häufigste Ursache für schleichende Instabilität.
Wenn Sie eine Konfigurationsdatei (z.B. /etc/ssh/sshd_config) geändert haben und das Paket-Update eine neue Standard-Version mitbringt, überschreibt Pacman Ihre Datei nicht. Stattdessen wird eine .pacnew Datei erstellt.
# Suchen und Mergen
# Alle .pacnew Dateien finden
sudo find /etc -name "*.pacnew"
# Tool zum Vergleichen und Mergen nutzen
sudo pacdiff
# (Erfordert das Paket 'pacman-contrib')
# 4. Day-2 Operations: Cache & Hygiene
Plattenplatz zurückgewinnen.
# Der Paket-Cache
Standardmäßig behält Arch jede jemals heruntergeladene Version eines Pakets unter /var/cache/pacman/pkg/.
# Behalte nur die letzten 3 Versionen
sudo paccache -r
# Automatisiere dies via Systemd Timer
sudo systemctl enable --now paccache.timer
# 5. Troubleshooting & “War Stories”
Wenn es nach dem Update hakt.
# Story 1: “Der hängende X-Server / Wayland”
Symptom: Nach einem Update startet die grafische Oberfläche nicht mehr. Ursache: Der Kernel wurde aktualisiert, aber das System läuft noch auf dem alten Kernel im RAM. Die Grafik-Module (z.B. Nvidia) passen nicht mehr zum laufenden Kernel. Lösung: Rebooten. In Arch ist ein Reboot nach jedem Kernel- oder Systemd-Update zwingend erforderlich.
# Story 2: “Das volle /boot Verzeichnis”
Symptom: pacman -Syu bricht mit “No space left on device” ab.
Ursache: Der Admin hat eine kleine /boot Partition (z.B. 100MB) erstellt. In Arch wachsen Kernel-Images und Initramfs stetig.
Lösung: Alte Kernel löschen oder (besser) die Partition auf mindestens 512MB vergrößern. Nutzen Sie ls -lh /boot, um die größten Dateien zu finden.
# 6. Fazit & Empfehlung
- Intervall: Updaten Sie mindestens einmal pro Woche. Zu große Abstände führen zu komplexen Abhängigkeits-Konflikten.
- Backups: Nutzen Sie Snapper (Artikel 154) auch unter Arch, wenn Sie Btrfs nutzen. Es ist die beste Versicherung vor jedem
pacman -Syu. - Check-Tools: Nutzen Sie
checkservices, um zu sehen, welche Dienste nach einem Library-Update neu gestartet werden müssen.
# Anhang: Cheatsheet
| Aufgabe | Befehl |
|---|---|
| System Sync | pacman -Syu |
| Verwaiste Dateien suchen | lostfiles |
| Pacman DB fixen | pacman-db-upgrade |
| Mirror-Speed | reflector --latest 20 --protocol https --sort rate --save /etc/pacman.d/mirrorlist |
| Log-Analyse | tail -f /var/log/pacman.log |
| Cache Größe sehen | du -sh /var/cache/pacman/pkg/ |
| Fehlgeschlagene Units | systemctl --failed |