[Freifunk-Bonn] Updatescript für unsere Firmware

eGeist egeist at cerberon.net
So Mär 2 04:30:37 CET 2014


Am 01.03.2014 09:05, schrieb johnny.bee at gmx.de:
> Hallo Jan,
> 
> freut mich doch, das Dir die Idee gefällt. Leider bräuchte dann aber der
> Webspace für unsere Releases eine Anpassung.
> 
> Mein Script funktioniert folgendermaßen:
> - Gehe auf den Updateserver in das Verzeichnis, der in der Config angegeben ist.
> -Suche dort nach einem Verzeichnis analog Deinem Boardnamen, damit keine falsche
> Version installiert wird. Also z.B. tl-wdr4300
> -Wenn Du nichts findest (keine Autoupdatefunktion bzw. nicht getestet) hör auf.
> -Wechsle in dieses Verzeichnis und suche nach einer Datei "upgradeversion"
> -Diese Datei ist wie folgt aufgebaut:
>    -1. Zeile: Aktuelle Version, also z.B. 2013-09-22_05-05-21-continuous
>    -2. Zeile: Kompletter Downloadpfad, also z.B.
> http://jenkins.kbu.freifunk.net/files/continuous/ff-kbu-tl-wdr4300-v1-2013-09-22_05-05-21.bin
> -Lade diese Datei herunter und überprüfe die Version mit Deiner installierten.
> Wenn gleich, dann hör auf.
> -Ansonsten lade die Firmwaredatei herunter nach /tmp und installiere sie.
> 
> Also würde es wahrscheinlich Sinn machen, den "normalen" Downloadbereich für die
> Releases per IPV6 zugänglich zu machen und den Aufbau nicht zu ändern und
> zusätzlich einen kleinen Bereich zu haben, wo die Datei "upgradeversion" in den
> entsprechenden Unterverzeichnissen liegt.
> Diesen Bereich würde ich auch gerne, auf jeden Fall zu Anfang, nicht
> automatisiert füllen lassen, sondern manuell nach entsprechenden Tests. Somit
> sollten auch die Risiken von totgeflashten Routern minimiert werden.
> 
> Was hältst Du davon? Ich würde mich logischerweise auch anbieten, diesen
> Updatebereich selbst zu befüllen, wenn ich die entsprechenden Zugriffsrechte
> erhalten kann.
> 
> Viele Grüße
> Thomas

Du kannst auch die MD5SUM auswerten, die checksumme brauchst Du ja eh.

###################################
# Kurz, dreckig und unvollständig #
###################################

cd /tmp

wget -6 http://jenkins.kbu.freifunk.net/files/release/latest/MD5SUMS

grep -v "untested/ff-kbu" MD5SUMS | grep -v "packages/"

# ergibt z.B. für die stable
## 4c8df0d7c38e430114af4d56add92720  ff-kbu-tl-wr1043nd-v1-v.1.0.bin
## c5ba4f1015bd216505b14d0b20db4371  ff-kbu-tl-wr741nd-v1-v.1.0.bin
## c5ba4f1015bd216505b14d0b20db4371  ff-kbu-tl-wr741nd-v2-v.1.0.bin
## 92c458fe1c5f2470fac3f3b527bcae6f  ff-kbu-tl-wr741nd-v4-v.1.0.bin

pack das in ein array und werte

$md5; $hw_ver; $fw_ver
$hw-ver
aus. Lösche MD5SUMS (wird ja nicht mehr gebraucht)

vergleiche vorhandene $fw mit aktueller $fw_ver aus dem array

Url zusammen bauen, falls neuer und laden

wget -6 http://<....>/files/release/latest/ff-kbu-tl-$hw_ver-v.$fw_ver.bin

md5sum prüfen

...

Obiges nur als Anregung

Gruss
eG.






Mehr Informationen über die Mailingliste Freifunk-Bonn