Mise à niveau du micrologiciel : conserver la configuration, reconstruire les paquets, vérifier DNS et gestion
Une mise à niveau, ce n’est pas seulement « remplacer le fichier du micrologiciel »
Section intitulée « Une mise à niveau, ce n’est pas seulement « remplacer le fichier du micrologiciel » »Séparez quatre éléments :
- le micrologiciel a-t-il été flashé et a-t-il démarré ;
- la configuration a-t-elle été conservée ou restaurée ;
- les paquets/greffons sont-ils toujours là ou faut-il les réinstaller ;
- la gestion, le DNS et le WAN ont-ils été rétablis.
Conserver la configuration ne conserve pas les paquets. Conserver la configuration d’une application ne conserve pas son binaire.
Avant la mise à niveau
Section intitulée « Avant la mise à niveau »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.gzCopiez l’archive de configuration hors de l’appareil ; pour une VM, faites aussi un instantané ou une sauvegarde PVE. Ne la laissez pas seulement dans /tmp.
AttenduVous pouvez revenir en arrière et savoir ce qui a disparu.
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.imgCe labo a utilisé l’image combinée ext4 25.12.6 x86/64 ; le SHA-256 du .img.gz correspondait, puis elle a été décompressée pour sysupgrade.
AttenduL'image correspond à la version/cible/architecture et la somme de contrôle est valide.
- Appareil physique : série/HDMI, touche failsafe, ancien micrologiciel ;
- PVE : instantané avant la mise à niveau, vérifiez
qm rollback; - Notez l’IP du LAN, le DHCP, le WAN, le DNS, le port de gestion ;
- Ne coupez pas l’alimentation et ne retirez pas de disque pendant la mise à niveau.
AttenduVous pouvez récupérer après une mise à niveau interrompue ou échouée.
Commande de mise à niveau
Section intitulée « Commande de mise à niveau »Par défaut (conserver la configuration) :
sysupgrade -v /tmp/openwrt.imgOptions :
-n: ne pas conserver la configuration (installation propre) ;-f <backup.tar.gz>: restaurer la configuration pendant la mise à niveau ;-c/-o: préserver davantage de fichiers modifiés ; limites plus complexes ;- N’utilisez pas
-Fpour ignorer la compatibilité sauf si vous en maîtrisez parfaitement les conséquences.
La mise à niveau ferme les sessions SSH/web ; attendez le redémarrage, ne coupez pas l’alimentation simplement parce que la connexion a échoué.
Vérifier après la mise à niveau
Section intitulée « Vérifier après la mise à niveau »ping -c 2 192.168.1.2curl -sSI --max-time 5 http://192.168.1.2/ | head -3Ce labo a conservé le LAN 192.168.1.2/24 ; HTTP 200 et SSH fonctionnaient.
AttenduVérifiez au moins une fois l'IP du LAN, HTTP et SSH.
uci show network.lan.ipaddruci show dhcp.lanip routenslookup openwrt.org 127.0.0.1logread | grep -Ei 'dnsmasq|netifd|dhcp' | tail -30Ce labo : le DNS et HTTP fonctionnaient après la mise à niveau ; la configuration du WAN a été conservée. Revérifiez quand même les baux DHCP des clients et l’accès réel à Internet, pas seulement le routeur lui-même.
AttenduLa configuration est conservée et le DNS/WAN fonctionnent réellement.
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"doneCe labo : 239 paquets avant, 182 après ; sqm-scripts, luci-app-sqm et luci-app-openclash avaient tous disparu. La configuration peut subsister, mais les binaires doivent être réinstallés.
Réinstallez un par un :
apk updateapk add sqm-scripts luci-app-sqm# verify menu/service before the next packageNe restaurez pas tous les greffons d’un coup ; rétablissez d’abord la gestion, le DNS et le réseau de base.
AttenduVous savez ce qui a été perdu et réinstallez à partir de la liste.
Ordre de reconstruction
Section intitulée « Ordre de reconstruction »- Réseau de base : network/dhcp/firewall ;
- DNS : dnsmasq, puis AGH si nécessaire ;
- Gestion : luci/uhttpd ;
- Proxy et régulation du trafic : OpenClash, SQM ;
- En dernier : règles, abonnements, réglages de performance.
Pour chaque paquet, vérifiez :
- installé ou non ;
- le menu/contrôleur LuCI existe ;
- le service démarre ;
- le DNS et la route par défaut n’ont pas été modifiés ;
- sa désactivation rétablit le réseau de base.
Retour arrière
Section intitulée « Retour arrière »- Appareil physique : conservez l’ancien micrologiciel et le mode de récupération ;
- PVE : instantané ou
vzdumpavant la mise à niveau, restaurez toute la VM en cas d’échec ; - Configuration :
sysupgrade -ravec l’archive ; - Ne « reflashez pas à nouveau » à la place de diagnostiquer l’échec.
Ce labo a utilisé l’instantané pre-019 ; après l’enregistrement des résultats, il a été restauré à l’état précédant la mise à niveau. La page consigne l’exécution réelle de la mise à niveau.
Test de labo E2 (2026-10-20)
Section intitulée « Test de labo E2 (2026-10-20) »- Environnement : OpenWrt 25.12.6 x86 VM 200 ; même version avant/après (reflashage, pas entre versions).
- Avant : 239 paquets ;
sqm-scripts,luci-app-sqm,luci-app-openclashinstallés ; LAN.2, DHCP ignore. - Après
sysupgrade -v /tmp/openwrt.img: l’appareil a redémarré ; LAN.2et DHCP ignore conservés ; HTTP 200, SSH et DNS fonctionnaient. - Paquets : 239 → 182 ; SQM/OpenClash perdus ; la configuration peut subsister mais les binaires doivent être réinstallés.
- Non réalisé : mise à niveau entre versions, vérification de la réinstallation de SQM/OpenClash, vrai Wi-Fi/PPPoE, récupération après coupure de courant.
- Recette :
tests/recipes/firmware-upgrade-25.12.md.
Sources et relecture
Section intitulée « Sources et relecture »- Niveau E2 partiel : la conservation de la configuration par sysupgrade à la même version, la gestion/DNS et la perte de paquets ont été testées ; l’entre-versions et la reconstruction des greffons n’ont pas été terminées.
- Ne déduisez pas le comportement entre versions à partir de résultats à la même version ; lisez les notes de version, sauvegardez et testez dans une VM.
- Aucun relecteur indépendant ; les conclusions se limitent à cet environnement VM.
Sources
Notes indépendantes sur OpenWrt. Chaque page précise le firmware, l’appareil, le gestionnaire de paquets et le retour arrière.
Icônes : Solar by 480 Design, CC BY 4.0