[Freifunk Franken Firmware 0000115]: Locks not deleted for mesh routers after Uplink goes off
Mantis Bug Tracker
mbt at chrisi01.de
Do Dez 6 17:59:27 CET 2018
Der folgende Eintrag wurde geschlossen.
======================================================================
https://mantis.freifunk-franken.de/view.php?id=115
======================================================================
Berichtet von: Adrian Schmutzler
Zugewiesen an: Adrian Schmutzler
======================================================================
Projekt: Freifunk Franken Firmware
Eintrag-ID: 115
Kategorie: Freifunk Franken Firmware
Reproduzierbarkeit: nicht getestet
Auswirkung: Blocker
Priorität: dringend
Status: geschlossen
Zielversion: next-stable
Lösung: keine Änderung notwendig
Behoben in Version:
======================================================================
Erstellt am: 2018-12-06 15:33 CET
Zuletzt geändert: 2018-12-06 17:59 CET
======================================================================
Zusammenfassung: Locks not deleted for mesh routers after Uplink goes
off
Beschreibung:
We have a set of Mesh-Routers that all did not come back after the Uplink went
down and up some time later:
https://monitoring.freifunk-franken.de/routers/4017
>From a mesh router connected via Ethernet, I was able to find out that
configurehood was not running, but the locks for configurehood and nodewatcher
were still present.
Thus, there must have been a situation where configurehood (and nodewatcher)
were cancelled without raising INT, TERM or EXIT, so execution is blocked by the
left-over lock file:
root at km005:~# ls -al /var/lock
drwxr-xr-x 2 root root 320 Dec 4 16:45 .
drwxrwxrwt 12 root root 380 Dec 6 10:38 ..
-rwx------ 1 root root 6 Dec 6 10:38 configurehood.lock
-rwx------ 1 root root 6 Dec 6 10:35 nodewatcher.lock
-rw-r--r-- 1 root root 0 Dec 4 16:43 procd_dropbear.lock
[...]
It is particularly interesting that this happened for BOTH configurehood AND
nodewatcher (note the time difference above).
======================================================================
----------------------------------------------------------------------
(0000321) Adrian Schmutzler (Administrator) - 2018-12-06 15:43
https://mantis.freifunk-franken.de/view.php?id=115#c321
----------------------------------------------------------------------
Logread ist voll mit:
Thu Dec 6 10:46:57 2018 daemon.info macnock[12508]: [s] Not allowing
30:b5:c2:ee:0f:29. Wrong hood: "30:b5:c2:ee:0f:28"
Thu Dec 6 10:46:57 2018 daemon.info macnock[12508]: [s] Not allowing
60:e3:27:ce:fa:e5. Wrong hood: "Forchheim"
Thu Dec 6 10:46:58 2018 daemon.info macnock[12508]: [s] Not allowing
30:b5:c2:ee:0f:29. Wrong hood: "30:b5:c2:ee:0f:28"
Thu Dec 6 10:46:58 2018 daemon.info macnock[12508]: [s] Not allowing
60:e3:27:ce:fa:e5. Wrong hood: "Forchheim"
show_info:
-> HOOD
Hood:
Mesh-Type (2.4/5 GHz): 802.11s / 802.11s
Channel (2.4/5 GHz): -- / -- (real) | 13 / 40 (Hood)
SSID (Client-AP): - (real) | freifunk-fo.de (Hood)
Config-AP: down
Das heißt, das Hoodfile ist da, aber der Router ist nicht konfiguriert.
Der Uplink kam bereits am 5. Mai wieder online, die Mesh-Router sind seit 2. Mai
offline.
Die Locks sind aber auf den Dec 6 10:3X datiert!
D.h. nachdem der Uplink da war, wurden noch munter Locks geschrieben, aber die
Router blieben trotzdem kaputt?!
Und dann irgendwann ging es ganz kaputt...
----------------------------------------------------------------------
(0000322) Adrian Schmutzler (Administrator) - 2018-12-06 16:30
https://mantis.freifunk-franken.de/view.php?id=115#c322
----------------------------------------------------------------------
So, wir haben festgestellt, dass das Dateisystem gelockt ist.
Aber:
Mesh-Router:
root at km005:~# df -h
Filesystem Size Used Available Use% Mounted on
/dev/root 2.5M 2.5M 0 100% /rom
tmpfs 13.8M 76.0K 13.7M 1% /tmp
/dev/mtdblock3 320.0K 256.0K 64.0K 80% /overlay
overlayfs:/overlay 320.0K 256.0K 64.0K 80% /
tmpfs 512.0K 0 512.0K 0% /dev
root at km005:~# echo "1" > /etc/abc
-ash: can't create /etc/abc: No space left on device
Uplink-Router:
root at km012:~# echo "1" > /etc/abc
root at km012:~# df -h
Filesystem Size Used Available Use% Mounted on
/dev/root 2.5M 2.5M 0 100% /rom
tmpfs 13.8M 100.0K 13.7M 1% /tmp
/dev/mtdblock3 320.0K 264.0K 56.0K 83% /overlay
overlayfs:/overlay 320.0K 264.0K 56.0K 83% /
tmpfs 512.0K 0 512.0K 0% /dev
Uplink-Router hat weniger frei, aber kann noch schreiben.
----------------------------------------------------------------------
(0000323) Adrian Schmutzler (Administrator) - 2018-12-06 17:08
https://mantis.freifunk-franken.de/view.php?id=115#c323
----------------------------------------------------------------------
Der Grund, warum die Router kaputt gehen, ist dann ganz trivial:
root at km005:~# configurehood
Trying to get hoodfile from ethernet neighbor...
wget: server returned error: HTTP/1.1 404 Not Found
New file detected, we reconfigure the Node
Setting hood name: Forchheim (ID )
uci: I/O error
sh: auto: out of range
uci: I/O error
w2ap
sh: auto: out of range
uci: I/O error
uci: I/O error
w2mesh
Loading wifi
sed: /etc/crontabs/root: No such file or directory
/etc/rc.common: line 151: /etc/init.d/cron: not found
/etc/init.d/alfred: waiting 30 secs for br-mesh address...
/etc/init.d/alfred: starting alfred
rm: can't remove '/tmp/fastd_fff_peers/*': No such file or directory
/etc/init.d/fastd: fff: interface 'fffVPN' does not exist
Address already set.
Address already set.
Route already set.
Ohne uci keine Konfiguration.
----------------------------------------------------------------------
(0000324) Adrian Schmutzler (Administrator) - 2018-12-06 17:58
https://mantis.freifunk-franken.de/view.php?id=115#c324
----------------------------------------------------------------------
Der ursprüngliche Verdacht, dass das Locking von configurehood/nodewatcher
kaputt wäre, hat sich als falsch herausgestellt. Die Diagnose kam durch eine
Kombination von falschem Verständnis des Mechanismus und falscher Systemzeit
zustande.
Tatsächlich sind die Gründe für den read-only Zustand nicht klar. Das
Dateisystem war mit rw gemountet. Der Zustand konnte aber durch einen simplen
Reboot behoben werden, sodass sich der betreffende Router wieder normal
verhält.
Eine Diagnose der anderen Geräte ist nur vor Ort möglich (nur Funk-Mesh).
Da der Bug im Sinne des Titels dieses Reports somit falsifiziert wurde, wird der
Report geschlossen.
Eintrags-Historie
Änderungsdatum Benutzername Feld Änderung
======================================================================
2018-12-06 15:33 Adrian SchmutzlerNeuer Eintrag
2018-12-06 15:43 Adrian SchmutzlerNotiz hinzugefügt: 0000321
2018-12-06 16:30 Adrian SchmutzlerNotiz hinzugefügt: 0000322
2018-12-06 16:30 Adrian SchmutzlerNotiz bearbeitet: 0000322
2018-12-06 17:08 Adrian SchmutzlerNotiz hinzugefügt: 0000323
2018-12-06 17:58 Adrian SchmutzlerNotiz hinzugefügt: 0000324
2018-12-06 17:59 Adrian SchmutzlerBearbeitung durch => Adrian Schmutzler
2018-12-06 17:59 Adrian SchmutzlerStatus neu => geschlossen
2018-12-06 17:59 Adrian SchmutzlerLösung offen => keine
Änderung notwendig
======================================================================
Mehr Informationen über die Mailingliste franken-dev