Debian 12 auf 13 Upgrade im Proxmox LXC Container (Copy & Paste)
Debian 12 auf 13 Upgrade im Proxmox LXC Container (Copy & Paste)
Debian 12 Bookworm auf 13 Trixie upgraden, direkt im LXC Container auf Proxmox. Fertiges Script zum Copy & Paste, plus Backup und Verifikation.
Vorher: Snapshot
Vor jedem Major-Upgrade einen Snapshot des Containers erstellen. Einzige einfache Rückfallebene bei Problemen.
pct snapshot <CTID> pre-debian13-upgrade
Das Upgrade-Script
Im Container als root ausführen:
cat <<EOF >/etc/apt/sources.list
deb http://ftp.debian.org/debian trixie main contrib non-free non-free-firmware
deb http://ftp.debian.org/debian trixie-updates main contrib non-free non-free-firmware
deb http://security.debian.org/debian-security trixie-security main contrib non-free non-free-firmware
deb http://ftp.debian.org/debian trixie-backports main contrib non-free non-free-firmware
EOF
apt-get update
DEBIAN_FRONTEND=noninteractive apt-get -o Dpkg::Options::="--force-confold" dist-upgrade -y
# Disable services that break in LXC / containers (harmless if not present)
systemctl disable --now systemd-networkd-wait-online.service || true
systemctl disable --now systemd-networkd.service || true
systemctl disable --now ifupdown-wait-online || true
# Install ifupdown2 (better networking stack for LXC/VMs)
apt-get install -y ifupdown2
# Cleanup
apt-get autoremove --purge -y
apt-get clean
reboot
Was das Script macht
- Sources.list: ersetzt Bookworm-Quellen durch Trixie-Quellen, inklusive Security und Backports.
- dist-upgrade: zieht alle Pakete auf Trixie,
--force-confoldbehält bestehende Config-Dateien bei Konflikten. - Service-Disables:
systemd-networkd-wait-online,systemd-networkdundifupdown-wait-onlinekönnen im LXC-Kontext beim Boot hängen bleiben, da sie auf Netzwerk-Hardware warten, die im Container nicht existiert. Deaktivieren verhindert das.|| truesorgt dafür, dass das Script nicht abbricht, falls ein Dienst gar nicht installiert ist. - ifupdown2: modernerer Networking-Stack, funktioniert zuverlässiger in LXC/VM-Umgebungen als das klassische ifupdown.
- Cleanup: entfernt nicht mehr benötigte Pakete und den apt-Cache.
- Reboot: notwendig, damit Kernel-Userspace-Tools, systemd und Netzwerkstack sauber auf Trixie laufen.
Danach: Verifikation
cat /etc/debian_version
lsb_release -a
apt list --upgradable
ip a
systemctl --failed
debian_versionsollte13.xzeigen.apt list --upgradablesollte leer sein.ip aprüft, ob die Netzwerkschnittstelle nach dem Reboot korrekt hochgekommen ist.systemctl --failedzeigt fehlgeschlagene Dienste nach dem Upgrade.
Bekannte Stolperfallen
- Container-Config auf Proxmox-Host prüfen: sehr alte LXC-Templates können mit Trixie inkompatible Cgroup- oder AppArmor-Profile mitbringen.
- Bei gepinnten Paket-Repos (Docker, PostgreSQL, etc.) müssen deren eigene sources.list-Einträge separat auf
trixieumgestellt werden, das Script deckt nur die Debian-Basisquellen ab. - Nach dem Upgrade Dienste einzeln prüfen, die auf spezifische Paketversionen angewiesen sind (z. B. PHP, Python, Datenbanken).
Rollback
Bei Problemen: Container stoppen, Snapshot aus dem ersten Schritt zurückspielen.
pct rollback <CTID> pre-debian13-upgrade



