Zum Inhalt springen

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:

  1. wurde die Firmware geflasht und gebootet;
  2. wurde die Konfiguration behalten/wiederhergestellt;
  3. sind Pakete/Plugins noch vorhanden oder müssen neu installiert werden;
  4. 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.

Router-ShellRelease, Target, Paketliste und Backup erfassen
Terminal-Fenster
cat /etc/openwrt_release
cat /etc/apk/arch 2>/dev/null
apk list --installed > /tmp/packages-$(date +%F).txt
wc -l /tmp/packages-$(date +%F).txt
sysupgrade -b /tmp/pre-upgrade-$(date +%F).tar.gz
sha256sum /tmp/pre-upgrade-$(date +%F).tar.gz

Kopieren 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.

Router-ShellImage und Prüfsumme verifizieren
Terminal-Fenster
wget -O /tmp/openwrt.img.gz <official-image-url>
sha256sum /tmp/openwrt.img.gz
# compare with the matching line in official sha256sums
gzip -dkf /tmp/openwrt.img.gz
ls -lh /tmp/openwrt.img

Dieses 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.

Router-ShellKonsole und Rollback bereithalten
  • Physisches Gerät: seriell/HDMI, Failsafe-Taste, alte Firmware;
  • PVE: Snapshot vor dem Upgrade, qm rollback prü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.

Standard (Konfiguration behalten):

Terminal-Fenster
sysupgrade -v /tmp/openwrt.img

Optionen:

  • -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 -F nicht, 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.

ComputerVerwaltungszugang
Terminal-Fenster
ping -c 2 192.168.1.2
curl -sSI --max-time 5 http://192.168.1.2/ | head -3
ssh [email protected] 'cat /etc/openwrt_release'

Dieses Labor behielt das LAN 192.168.1.2/24; HTTP 200 und SSH funktionierten.

ErwartetLAN-IP, HTTP und SSH mindestens einmal prüfen.

Router-ShellKonfiguration und DNS/WAN
Terminal-Fenster
uci show network.lan.ipaddr
uci show dhcp.lan
ip route
nslookup openwrt.org 127.0.0.1
logread | grep -Ei 'dnsmasq|netifd|dhcp' | tail -30

In 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.

Router-ShellPakete und Plugins
Terminal-Fenster
apk list --installed | wc -l
for p in sqm-scripts luci-app-sqm luci-app-openclash; do
apk info -e "$p" && echo "$p installed" || echo "$p MISSING"
done

In 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:

Terminal-Fenster
apk update
apk add sqm-scripts luci-app-sqm
# verify menu/service before the next package

Stellen 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.

  1. Grundnetzwerk: network/dhcp/firewall;
  2. DNS: dnsmasq, danach bei Bedarf AGH;
  3. Verwaltung: luci/uhttpd;
  4. Proxy/Traffic-Shaping: OpenClash, SQM;
  5. 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.
  • Physisches Gerät: alte Firmware/Recovery-Modus bereithalten;
  • PVE: Snapshot/vzdump vor dem Upgrade, bei Fehlschlag die gesamte VM zurückrollen;
  • Konfiguration: das Archiv mit sysupgrade -r einspielen;
  • 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.

  • 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-openclash installiert; LAN .2, DHCP ignore.
  • Nach sysupgrade -v /tmp/openwrt.img: Gerät startete neu; LAN .2 und 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.
  • 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

Router.Homes

Unabhängige OpenWrt-Notizen. Jede Seite nennt Firmware, Gerät, Paketmanager und den Rückweg.

Symbole: Solar by 480 Design, CC BY 4.0