TNG und preserve mod

Mein Wechselrichter war offline. So habe ich gesehen das meine 4040 eine neue Firmware gezogen hat.
Das er offline war, heißt jedoch leider das der preserve mod nicht funktioniert hat :frowning:
Logs haben das Flashen und neu starten wohl eher nicht überlebt, oder?

So, ich hab’ das jetzt mal ausprobiert mit einem Update von »rawhide« auf »tng« (1.1.5~6). Ich habe /lib/gluon/ffgt-preserve-mods.sh vor dem sysupgrade auf die tng-FW angelegt (also unter einer FW, die das Paket schon hatte — sonst geht das nicht, da dann die Datei nicht rübergerettet wird) und es hat geklappt:

root@33803-CheckPoint-HdJ-1543:~# ls -l /lib/gluon/ffgt-preserve-mods.sh 
-rwxr-xr-x    1 root     root           233 Oct 11 00:09 /lib/gluon/ffgt-preserve-mods.sh
root@33803-CheckPoint-HdJ-1543:~# cat /lib/gluon/ffgt-preserve-mods.sh 
#!/bin/sh
uci set wireless.client_radio0.ssid='KreisGT.freifunk.net-2GHz'
uci set wireless.client_radio1.ssid='KreisGT.freifunk.net-5GHz'
uci set wireless.mesh_radio0.disabled='1'
uci set wireless.mesh_radio0.disabled='1'
uci commit

Der Knoten mesht nicht und sendet 2 unterschiedliche AP-SSIDs.

Nope. Kann es evtl. sein, daß die vorherige 4040-FW das Paket noch gar nicht drin hatte? Stochern im Nebel, im Grunde tut das aber. Man kann das auch vorher verifizieren, mit sysupdate -l bekommt man eine Liste der »rüberzurettenden« Dateien:

root@33803-CheckPoint-HdJ-1543:~# sysupgrade -l | grep preserve
/lib/gluon/ffgt-preserve-mods.sh

Ist denn das Execute-Flag von /lib/gluon/ffgt-preserve-mods.sh gesetzt?

root@33332-Buschkoettersweg-63-a86c:/lib/gluon# sysupgrade -l | grep preserve
/lib/gluon/ffgt-preserve-mods.sh
root@33332-Buschkoettersweg-63-a86c:/lib/gluon# ls -l | grep preserve
-rw-r--r--    1 root     root           266 Jun 18 09:59 ffgt-preserve-mods.sh

doh Alles klar.

root@33332-Buschkoettersweg-63-a86c:/lib/gluon# chmod +x ffgt-preserve-mods.sh
root@33332-Buschkoettersweg-63-a86c:/lib/gluon# ls -l | grep preserve
-rwxr-xr-x    1 root     root           266 Jun 18 09:59 ffgt-preserve-mods.sh

Dann warte ich auf das nächste Update. Danke für deine Recherche.

Hintergrund:

if test -x /lib/gluon/ffgt-preserve-mods.sh; then /lib/gluon/ffgt-preserve-mods.sh || true; fi

→ falls /lib/gluon/ffgt-preserve-mods.sh existiert und ausführbar ist, führe es aus (und falls es einen Fehlercode zurückgibt, ersetze diesen, damit nachfolgende Skripte nicht abbrechen).