fff-layer3: Autoconfigure layer3 Router after update #4
No reviewers
Labels
No Label
RFC
RFT
WIP
blocked
bsp
bug
build/scripts/tools
duplicate
feature
fixed
layer3
mantis
more details required
needs changes
node
packages/fff
rejected
security
trivial
upstream
No Milestone
No Assignees
4 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: freifunk-franken/firmware#4
Loading…
Reference in New Issue
No description provided.
Delete Branch "ChristianD/firmware:l3update"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This adds a script to init.d to automatically call
the appropriate configuregateway commands after an update,
so the configuration of the device is restored.
The changes are applied, if configuregateway is successful.
Otherwise, they are reverted. Due to this, no additional checks for
the configuration are necessary, because the configuregateway script
fails, if the config version is wrong or no configuration exists at all.
I have used the script from Fabian here:
https://pw.freifunk-franken.de/patch/1312/
and have make a init.d Script.
After executing the script, it destroys itself
The init.d run long after der uci-default and we have no problems with
configurenetwork
Signed-off-by: Fabian Bläse fabian@blaese.de
Signed-off-by: Christian Dresel freifunk@dresel.systems
388a3f5da4
toc0d9b881a0
Hi,
warum ist es manchmal l3auto und manchmal l3update? Sollte das nicht die gleiche Datei sein
Hab ich gerade noch überarbeitet, war im ersten push noch fehlerhaft und sollte nun überall l3update sein
Also irgendwie bereitet das schon Schmerzen.
Wie wäre es denn, wenn man das in configurenetwork hinten dran hängt. Da gibt es schon ein:
"FORCEPARSE='0' # Parse at: 0=first boot only, 1=every reboot, 2=next reboot (once)"
Und wenn mal jemand den Mut hat, configurenetwork wegzupatchen, nimmt man das gleich mit weg und es wird nicht vergessen.
eigentlich wollen wir die Abhängigkeit dorthin irgendwann auflösen, wäre daher irgendwie ungut wenn wir das da jetzt mit einbauen.
@ -0,0 +10,4 @@
fi
# first we disable the init.d
/etc/init.d/l3update disable
# we must delete the symlink manual
Grammer:
# we must delete the symlink manually
@ -0,0 +12,4 @@
/etc/init.d/l3update disable
# we must delete the symlink manual
rm /etc/rc.d/S99l3update
# and now we delete the init.d file complete to be on the safe side
Gammer:
# and now we delete the init.d file completely to be on the safe side
c0d9b881a0
to9e27e06bc3
Wie gerade schon im IRC diskutiert, zwei grundsätzlich Anmerkungen:
Ich würde nur den init.d disable ausführen und die beiden commands danach weglassen. Das rm rc.d darf nicht nötig sein, sonst ist was kaputt. Und der Dienst an sich schadet nicht, zumal sich eine Datei nicht selbst löschen sollte.
Ich finde das mit dem "yes" an configuregateway -c übergeben ein bisschen unschön. Ggf. wäre es eleganter, für diesen Zweck ein
configuregateway -s
zu schaffen, das dann intern auf die relevanten Funktionen zugreifen kann.Ich überlege da auch lange hin und her und bin mir bisschen unschlüsig. Mir ist es aber irgendwie lieber da komplett aufzuräumen. Das Script braucht danach niemand mehr und bevor es da zu Fehlern kommt, lieber sicher alles wegräumen. Wenn es doch aus irgendeinen Grund jemand wieder haben will, kann er sich das auch /rom wieder raus kopieren.
Könnte man tun ja, stört mich persönlich jetzt aber eigentlich nicht und man muss weniger anfassen.
Gerne zu beiden Punkten weitere Meinungen, wenn ich überstimmt werde baue ich es gerne nochmal um
Hi,
zu 1; den Link zu loeschen is in ordnung. Das ist der klassische Weg in rc.d etwas ein/aus zu schalten. Aber das sich das Skript selbst loescht, fuehlt sich komisch an. Wirklich geloescht wird es ja nicht, da es im rom liegt und es wird kein Platz freigegeben. Ich wuerde vorschlagen nur den Link zu loeschen und das Skript einfach liegen zu lassen.
zu 2; das yes ist mir nicht negativ aufgefallen. Ganz normal irgendwie.
9e27e06bc3
to13de0a7737
fff-gateway: Autoconfigure gateway after updateto fff-layer3: Autoconfigure layer3 Router after updaterebased und das löschen des Scriptes entfernt.
13de0a7737
to4afea7a471
4afea7a471
tob0d175db02
@ -0,0 +10,4 @@
fi
# first we disable the init.d
/etc/init.d/l3update disable
# we must delete the symlink manually
Das wundert mich etwas, dass nach dem l3update disable der Link noch da sein soll. Ich habe noch mal nachgeschaut in rc.common. Da werden die Links in der Funktion disable schon geloescht.
Ansonsten ist das auf jeden Fall eine gute Zwischenloesung bis das ganze Networksetup mal ueberarbeitet wird.
Hie schon mal ein
@ -0,0 +1,15 @@
#!/bin/sh /etc/rc.common
START=99
Hier würde ich ne Leerzeile danach einfügen.
@ -0,0 +7,4 @@
configure-layer3 -a
else
configure-layer3 -r
fi
Auch hier ggf. ne Leerzeile nach dem "fi".
@ -0,0 +9,4 @@
configure-layer3 -r
fi
# first we disable the init.d
/etc/init.d/l3update disable
Ich würde die Datei und damit auch diese Zeile in fff-l3update oder sogar fff-layer3-update umbenennen.
@ -0,0 +11,4 @@
# first we disable the init.d
/etc/init.d/l3update disable
# we must delete the symlink manually
rm /etc/rc.d/S99l3update
Ein "rm -f" wäre besser, falls die Datei doch irgendwann mal automatisch gelöscht wird.
Dann gibt es keinen Fehler ...
Hi,
streng genommen ist der erste Signed-off-by immer auch der Patch-Autor (From: Feld). Wenn du nichts dagegen hast, würde ich das gerne beim Applien wieder auf Fabian zurücksetzen.
Ansonsten hätte ich ein paar Kleinigkeiten an der Commit-Message korrigiert:
alles soweit ok für mich. Hab mich mit Fabian schon unterhalten und ihm wars total egal, mir ist es auch total egal also mach wie du es für richtig hälst.
Commitmsg passt soweit auch danke
b0d175db02
to3baf256132
3baf256132
to32b3a19b15
Alle Änderungen überarbeitet
32b3a19b15
to38e7dc18e0
Danke, wird gleich gemergt.
Pull request closed