Firmware-Upgrade: Konfiguration behalten, Pakete neu aufbauen, DNS/Verwaltung prüfen
Ein Upgrade ist nicht nur „die Firmware-Datei austauschen“
Abschnitt betitelt „Ein Upgrade ist nicht nur „die Firmware-Datei austauschen““Trennen Sie vier Dinge:
- wurde die Firmware geflasht und gebootet;
- wurde die Konfiguration behalten/wiederhergestellt;
- sind Pakete/Plugins noch vorhanden oder müssen neu installiert werden;
- haben sich Verwaltung/DNS/WAN erholt.
Das Behalten der Konfiguration behält keine Pakete. Das Behalten der Konfiguration einer App behält nicht deren Binärdatei.
Vor dem Upgrade
Abschnitt betitelt „Vor dem Upgrade“cat /etc/openwrt_releasecat /etc/apk/arch 2>/dev/nullapk list --installed > /tmp/packages-$(date +%F).txtwc -l /tmp/packages-$(date +%F).txtsysupgrade -b /tmp/pre-upgrade-$(date +%F).tar.gzsha256sum /tmp/pre-upgrade-$(date +%F).tar.gzKopieren Sie das Konfigurationsarchiv vom Gerät; bei einer VM erstellen Sie zusätzlich einen PVE-Snapshot bzw. ein Backup. Lassen Sie es nicht nur in /tmp.
ErwartetSie können zurückrollen und wissen, was verschwunden ist.
wget -O /tmp/openwrt.img.gz <official-image-url>sha256sum /tmp/openwrt.img.gz# compare with the matching line in official sha256sumsgzip -dkf /tmp/openwrt.img.gzls -lh /tmp/openwrt.imgDieses Labor verwendete das kombinierte ext4-Image 25.12.6 x86/64; die SHA-256 der .img.gz stimmte überein, danach wurde es für sysupgrade entpackt.
ErwartetDas Image passt zu Release/Target/Architektur und die Prüfsumme ist gültig.
- Physisches Gerät: seriell/HDMI, Failsafe-Taste, alte Firmware;
- PVE: Snapshot vor dem Upgrade,
qm rollbackprüfen; - LAN-IP, DHCP, WAN, DNS und Verwaltungsport notieren;
- Trennen Sie während des Upgrades weder den Strom noch entfernen Sie Platten.
ErwartetSie können sich von einem unterbrochenen/fehlgeschlagenen Upgrade erholen.
Upgrade-Befehl
Abschnitt betitelt „Upgrade-Befehl“Standard (Konfiguration behalten):
sysupgrade -v /tmp/openwrt.imgOptionen:
-n: Konfiguration nicht behalten (saubere Installation);-f <backup.tar.gz>: Konfiguration während des Upgrades wiederherstellen;-c/-o: mehr geänderte Dateien erhalten; komplexere Grenzen;- Verwenden Sie
-Fnicht, um die Kompatibilität zu ignorieren, es sei denn, Sie verstehen die Folgen vollständig.
Das Upgrade beendet SSH-/Web-Sitzungen; warten Sie den Neustart ab und schalten Sie nicht aus, nur weil die Verbindung abbrach.
Nach dem Upgrade prüfen
Abschnitt betitelt „Nach dem Upgrade prüfen“ping -c 2 192.168.1.2curl -sSI --max-time 5 http://192.168.1.2/ | head -3Dieses Labor behielt das LAN 192.168.1.2/24; HTTP 200 und SSH funktionierten.
ErwartetLAN-IP, HTTP und SSH mindestens einmal prüfen.
uci show network.lan.ipaddruci show dhcp.lanip routenslookup openwrt.org 127.0.0.1logread | grep -Ei 'dnsmasq|netifd|dhcp' | tail -30In diesem Labor: DNS und HTTP funktionierten nach dem Upgrade; die WAN-Konfiguration blieb erhalten. Prüfen Sie trotzdem erneut die DHCP-Leases der Clients und echtes Internet, nicht nur den Router selbst.
ErwartetDie Konfiguration blieb erhalten und DNS/WAN funktionieren tatsächlich.
apk list --installed | wc -lfor p in sqm-scripts luci-app-sqm luci-app-openclash; do apk info -e "$p" && echo "$p installed" || echo "$p MISSING"doneIn diesem Labor: vorher 239 Pakete, nachher 182; sqm-scripts, luci-app-sqm und luci-app-openclash waren alle weg. Die Konfiguration kann erhalten bleiben, aber die Binärdateien müssen neu installiert werden.
Einzeln neu installieren:
apk updateapk add sqm-scripts luci-app-sqm# verify menu/service before the next packageStellen Sie nicht alle Plugins auf einmal wieder her; bringen Sie zuerst Verwaltung/DNS/Grundnetzwerk in Ordnung.
ErwartetSie wissen, was verloren ging, und installieren anhand der Liste neu.
Reihenfolge des Wiederaufbaus
Abschnitt betitelt „Reihenfolge des Wiederaufbaus“- Grundnetzwerk: network/dhcp/firewall;
- DNS: dnsmasq, danach bei Bedarf AGH;
- Verwaltung: luci/uhttpd;
- Proxy/Traffic-Shaping: OpenClash, SQM;
- Zuletzt: Regeln/Abonnements/Performance-Tuning.
Prüfen Sie bei jedem Paket:
- installiert oder nicht;
- LuCI-Menü/Controller vorhanden;
- Dienst startet;
- DNS/Default-Route wurde nicht verändert;
- Deaktivieren stellt das Grundnetzwerk wieder her.
Rollback
Abschnitt betitelt „Rollback“- Physisches Gerät: alte Firmware/Recovery-Modus bereithalten;
- PVE: Snapshot/
vzdumpvor dem Upgrade, bei Fehlschlag die gesamte VM zurückrollen; - Konfiguration: das Archiv mit
sysupgrade -reinspielen; - Verwenden Sie nicht „erneut flashen“ anstelle einer Diagnose des Fehlers.
Dieses Labor verwendete den Snapshot pre-019; nach der Aufzeichnung der Ergebnisse wurde auf den Zustand vor dem Upgrade zurückgerollt. Die Seite dokumentiert den tatsächlichen Upgrade-Lauf.
E2-Laborlauf (2026-10-20)
Abschnitt betitelt „E2-Laborlauf (2026-10-20)“- Umgebung: OpenWrt 25.12.6 x86-VM 200; vorher/nachher dieselbe Version (Neuflashen, nicht versionsübergreifend).
- Vorher: 239 Pakete;
sqm-scripts,luci-app-sqm,luci-app-openclashinstalliert; LAN.2, DHCP ignore. - Nach
sysupgrade -v /tmp/openwrt.img: Gerät startete neu; LAN.2und DHCP ignore blieben erhalten; HTTP 200, SSH und DNS funktionierten. - Pakete: 239 → 182; SQM/OpenClash gingen verloren; die Konfiguration kann erhalten bleiben, aber die Binärdateien müssen neu installiert werden.
- Nicht abgeschlossen: versionsübergreifendes Upgrade, Verifikation der SQM-/OpenClash-Neuinstallation, echtes WLAN/PPPoE, Wiederherstellung nach Stromausfall.
- Rezept:
tests/recipes/firmware-upgrade-25.12.md.
Quellen und Review
Abschnitt betitelt „Quellen und Review“- Dies ist E2 teilweise: Erhalt der Konfiguration bei sysupgrade in derselben Version, Verwaltung/DNS und Paketverlust wurden getestet; versionsübergreifend und Plugin-Neuaufbau nicht abgeschlossen.
- Schließen Sie vom Ergebnis in derselben Version nicht auf das Verhalten über Releases hinweg; lesen Sie die Release Notes, sichern Sie und testen Sie in einer VM.
- Kein unabhängiger Reviewer; die Schlussfolgerungen gelten nur für diese VM-Umgebung.
Quellen
Unabhängige OpenWrt-Notizen. Jede Seite nennt Firmware, Gerät, Paketmanager und den Rückweg.
Symbole: Solar by 480 Design, CC BY 4.0