AC Mesh Upgrade Probleme

Adrian Schmutzler mail at adrianschmutzler.de
Mi Apr 11 12:14:36 CEST 2018


Hallo zusammen,

 

folgendes ist relevant für alle, die die UniFi AC Mesh einsetzen oder dies
in Kürze planen:

 

Was ist das Problem:

Die AC Mesh besitzt ein sogenanntes Flip-Flop-Layout, d.h. die Firmware
sitzt parallel auf zwei verschiedenen Partitionen. Beim Flashen mit der
Freifunk-Firmware werden diese zwar beide überschrieben, allerdings hat das
sysupgrade danach nur noch Zugriff auf eine davon. Entsprechend muss beim
Flashen der Firmware vorher der bootloader entsprechend modifiziert werden.

 

!! Dies war bisher NICHT Bestandteil der Anleitung. Der bootloader weiß nun
also nicht, welche Partition er nehmen soll, was im Normalfall kein Problem
ist. Problematisch wird es, wenn man nun etwas per sysupgrade verändern
will. !!

 

Prinzipiell könnte man die entsprechenden Veränderungen am bootloader auch
nachträglich durchführen:

“cat /proc/mtd” in der Konsole eingeben, die Partition “bs” identifizieren
und den Wert mtdX in der zugehörigen ersten Spalte merken.

Dann „dd if=/dev/zero bs=1 count=1 of=/dev/mtd7” eingeben, wobei statt mtd7
der Wert aus dem ersten Schritt zu verwenden ist (normalerweise sollte das
bei allen mtd7 sein)

 

Im Erfolgsfall liefert „hexdump -n 16 /dev/mtd7“ dann folgendes:

0000000 0000 0000 a34d e82b 0000 0000 0000 0000

0000010

 

Standardmäßig (und damit auf allen „alten“ Geräten bzw. bei Misserfolg)
erhält man:

0000000 8000 0000 a34d e82b 0000 0000 0000 0000

0000010

 

!! Für ALLE zum Zeitpunkt dieser Mail im Umlauf befindlichen FFF-Firmwares
ist jedoch die relevante Partition auf read-only gesetzt. Das bedeutet, wer
bisher eine AC Mesh mit FF geflasht hat, ist jetzt quasi auf der aktuellen
Firmware gefangen! !!

 

Ich habe heute eine Firmware hochgeladen (adsc2_20180410), die die
entsprechende Partition nicht mehr read-only setzt. Ich werde dies auch für
die offizielle FW als Patch anbieten. Dies funktioniert allerdings NICHT
nachträglich. Wurde die bs partition einmal auf read-only gesetzt, kann dies
nicht durch ein sysupgrade geändert werden (habe ich ausprobiert).

Die adsc_* Firmware für KeyXchangeV1 wird voraussichtlich nicht
aktualisiert.

 

Was bedeutet das für jetzige AC-Mesh-Betreiber:

-          Die AC Mesh funktioniert einigermaßen, solange ihr keine Updates
daran macht. Sysupgrades funktionieren, solange sich die Kernel-Version
nicht ändert.

-          Wollt ihr irgendwann darüberhinaus updaten oder seid ihr
Pedanten, ist die einzige Möglichkeit TFTP: Mit TFTP die Originalfirmware
flashen, und dann mit Hilfe der aktualisierten Anleitung
(https://wiki.freifunk-franken.de/w/Anleitung:UbiquitiUnifiACMesh#Firmware_f
lashen) die Firmware installieren. Dabei am besten darauf achten, dass ihr
dann auch gleich eine Firmware installiert, die die bs-partition NICHT auf
read-only setzt. Die ist zwar erstmal nicht so schlimm, wenn ihr die
richtigen Veränderungen bei Flashen gemacht habt, aber vielleicht ändert
OpenWRT ja den Flashprozess irgendwann mal, und dann wäre das praktisch.

 

WICHTIG: Als Konsequenz aus den Erkenntnissen ändert sich die
Installationsanleitung. Auch erfahrene AC-Mesh-Nutzer sollten sich also
nochmals mit der Anleitung auseinandersetzen:

 

https://wiki.freifunk-franken.de/w/Anleitung:UbiquitiUnifiACMesh#Firmware_fl
ashen

 

Beste Grüße

 

Adrian

 

 

-------------- nächster Teil --------------
Ein Dateianhang mit HTML-Daten wurde abgetrennt...
URL: <http://lists.freifunk.net/mailman/private/franken-freifunk.net/attachments/20180411/cb7daa18/attachment.html>


Mehr Informationen über die Mailingliste franken