Symcon startet nicht mehr nach Update auf eine neue Revision von 7.0

ich hänge mich mal an diesen Thread an, auch wenn mein Problem anders gelagert ist:

Seit einigen Updates innerhalb V7.0 habe ich das Problem, dass Symcon nach dem Update einfach nicht mehr startet. Die entscheidende Fehlermeldung im Log ist wohl

12/04/23 20:23:58 | 00000 | MESSAGE | Kernel               | bind: Die Adresse wird bereits verwendet

danach fährt Symcon direkt wieder runter. Manuelles Stoppen und Starten des Dienstes bringt keine Verbesserung. Es hilft nur, den Raspi komplett neu zu starten. Danach ist dann alles wieder fein und auch ein Neustart von Symcon klappt wieder problemlos. Zum besseren Verständnis hänge ich den gesamten Log hier an.

12/04/23 20:23:58 | 00000 | MESSAGE | Kernel               | Creating...
12/04/23 20:23:58 | 00000 | MESSAGE | Kernel               | Detected TimeZone: Europe/Berlin
12/04/23 20:23:58 | 00000 | MESSAGE | Kernel               | Platform: Raspberry Pi
12/04/23 20:23:58 | 00000 | MESSAGE | Kernel               | Version: 7.0
12/04/23 20:23:58 | 00000 | MESSAGE | Kernel               | Revision: a7bfa952c27750476921a109d872f1fa143a7955
12/04/23 20:23:58 | 00000 | MESSAGE | Kernel               | Build: 12/04/23
12/04/23 20:23:58 | 00000 | MESSAGE | Kernel               | WorkingDir: /var/lib/symcon/
12/04/23 20:23:58 | 00000 | MESSAGE | Kernel               | SystemDir: /usr/share/symcon/
12/04/23 20:23:58 | 00000 | MESSAGE | Kernel               | LogDir: /var/log/symcon/
12/04/23 20:23:58 | 00000 | MESSAGE | Kernel               | cURL Version: libcurl/8.0.1 OpenSSL/3.1.0 zlib/1.2.13
12/04/23 20:23:58 | 00000 | MESSAGE | Kernel               | Git2 Version: 1.6.4
12/04/23 20:23:58 | 00000 | MESSAGE | Kernel               | SSH Version: 0.10.5
12/04/23 20:23:58 | 00000 | MESSAGE | Kernel               | FFmpeg Version: Codec/60.3.100 Device/60.1.100 Format/60.3.100 Util/58.2.100
12/04/23 20:23:58 | 00000 | MESSAGE | Kernel               | ZLIB Version: 1.2.13
12/04/23 20:23:58 | 00000 | MESSAGE | Kernel               | OpenSSL Version: OpenSSL 3.1.0 14 Mar 2023
12/04/23 20:23:58 | 00000 | MESSAGE | Kernel               | OpenSSL CertDir: /usr/share/symcon/
12/04/23 20:23:58 | 00000 | MESSAGE | Kernel               | OpenSSL CertFile: /usr/share/symcon/cacert.pem
12/04/23 20:23:58 | 00000 | MESSAGE | Kernel               | XML2 Version: 20912
12/04/23 20:23:58 | 00000 | MESSAGE | Kernel               | XML2 Threads: Yes
12/04/23 20:23:58 | 00000 | MESSAGE | Kernel               | PHP Version: 8.2.12
12/04/23 20:23:58 | 00000 | MESSAGE | Kernel               | Initializing...
12/04/23 20:23:58 | 00000 | MESSAGE | LocalePool           | Creating...
12/04/23 20:23:58 | 00000 | MESSAGE | LicensePool          | Creating...
12/04/23 20:23:58 | 00000 | MESSAGE | SyncReplicationService | Creating...
12/04/23 20:23:58 | 00000 | MESSAGE | Settings             | Creating...
12/04/23 20:23:58 | 00000 | MESSAGE | Settings             | Loading settings...
12/04/23 20:23:58 | 00000 | MESSAGE | LocalePool           | Detected locale: de_DE
04.12.2023 20:23:58 | 00000 | MESSAGE | ObjectManager        | Erstelle...
04.12.2023 20:23:58 | 00000 | MESSAGE | CategoryManager      | Erstelle...
04.12.2023 20:23:58 | 00000 | MESSAGE | VariableManager      | Erstelle...
04.12.2023 20:23:58 | 00000 | MESSAGE | InstanceManager      | Erstelle...
04.12.2023 20:23:58 | 00000 | MESSAGE | ScriptManager        | Erstelle...
04.12.2023 20:23:58 | 00000 | MESSAGE | EventManager         | Erstelle...
04.12.2023 20:23:58 | 00000 | MESSAGE | MediaManager         | Erstelle...
04.12.2023 20:23:58 | 00000 | MESSAGE | LinkManager          | Erstelle...
04.12.2023 20:23:58 | 00000 | MESSAGE | ModuleLoader         | Erstelle...
04.12.2023 20:23:58 | 00000 | MESSAGE | FlowHandler          | Erstelle...
04.12.2023 20:23:58 | 00000 | MESSAGE | MutexHandler         | Erstelle...
04.12.2023 20:23:58 | 00000 | MESSAGE | ProfilePool          | Erstelle...
04.12.2023 20:23:58 | 00000 | MESSAGE | ScriptEngine         | Erstelle...
04.12.2023 20:23:58 | 00000 | MESSAGE | ScriptEngine         | Starte 100 Skript-Threads...
04.12.2023 20:23:58 | 00000 | MESSAGE | TimerPool            | Erstelle...
04.12.2023 20:23:58 | 00000 | MESSAGE | DataServer           | Erstelle...
04.12.2023 20:23:58 | 00000 | MESSAGE | DataServer           | Starte Server...
12/04/23 20:23:58 | 00000 | MESSAGE | LocalePool           | Removing...
12/04/23 20:23:58 | 00000 | MESSAGE | Kernel               | bind: Die Adresse wird bereits verwendet
12/04/23 20:23:58 | 00000 | MESSAGE | Kernel               | Removing...
12/04/23 20:23:58 | 00000 | SUCCESS | Kernel               | *** IPS SHUTDOWN COMPLETE
12/04/23 20:23:58 | 00000 | MESSAGE | TimerPool            | Terminating timer thread...
12/04/23 20:23:58 | 00000 | MESSAGE | TimerPool            | Removing...
12/04/23 20:23:58 | 00000 | MESSAGE | ScriptEngine         | Removing...
12/04/23 20:23:58 | 00000 | MESSAGE | ScriptEngine         | Waiting for all script threads to terminate...
12/04/23 20:23:59 | 00000 | MESSAGE | SyncReplicationService | Removing...
12/04/23 20:23:59 | 00000 | MESSAGE | Settings             | Removing...
12/04/23 20:23:59 | 00000 | MESSAGE | ProfilePool          | Removing...
12/04/23 20:23:59 | 00000 | MESSAGE | MutexHandler         | Removing...
12/04/23 20:23:59 | 00000 | MESSAGE | FlowHandler          | Removing...
12/04/23 20:23:59 | 00000 | MESSAGE | LinkManager          | Removing...
12/04/23 20:23:59 | 00000 | MESSAGE | MediaManager         | Removing...
12/04/23 20:23:59 | 00000 | MESSAGE | EventManager         | Terminating event thread...
12/04/23 20:23:59 | 00000 | MESSAGE | EventManager         | Removing...
12/04/23 20:23:59 | 00000 | MESSAGE | ScriptManager        | Removing...
12/04/23 20:23:59 | 00000 | MESSAGE | VariableManager      | Removing...
12/04/23 20:23:59 | 00000 | MESSAGE | InstanceManager      | Removing...
12/04/23 20:23:59 | 00000 | MESSAGE | CategoryManager      | Removing...
12/04/23 20:23:59 | 00000 | MESSAGE | ObjectManager        | Removing...
12/04/23 20:23:59 | 00000 | MESSAGE | ModuleLoader         | Removing...
12/04/23 20:23:59 | 00000 | MESSAGE | LicensePool          | Removing...

Bin ich der Einzige, bei dem das so ist? Was läuft da falsch?

Grüße
Jürgen

Was man genau nicht macht.
Jetzt neues Thema :wink:

Kann es sein das der Port 3777 schon belegt ist?

Michael

ich wüsste nicht wodurch. Den Port nutzt nur Symcon. Und nach dem Neustart des RPI läuft es ja wieder…
…und auch ein restart von Symcon ist problemlos möglich. aber ggf. wird der Port beim Update nicht freigegeben.
Grüße
Jürgen

Vielleicht wurde der Dienst nicht beendet, sondern es hing ein PHP Thread?
Michael

habe ich mit

ps -ax |grep symcon

kontrolliert. Alles beendet.

Ich hol das Thema nochmal hoch.
@paresy Was sagt mir das log? Wodurch fährt Symcon nicht mehr hoch und wie lässt sich das beheben?
Grüße
Jürgen

Im Prinzip können wir den Port 3777 nicht binden. D.h. Das irgendwer oder irgendwas diesen blockiert. Evtl. sind noch halb offene Ports da die diesen blockieren. Kannst du das provozieren oder passiert das nur ab und zu?

Am einfachsten behebt sich das durch einen reboot vom System.

paresy

ok, habe jetzt mal nach dem Übeltäter geforscht.

netstat -nlp

wirft mir davfs als Blockierer aus! :dizzy_face: ???

tcp6     264      0 :::1883                 :::*                    LISTEN      194294/mount.davfs  
tcp6      16      0 :::3777                 :::*                    LISTEN      194294/mount.davfs  

Wie kann das sein? Ich mounte ein DAV-Laufwerk tatsächlich aus Symcon heraus. Aber kann das dann passieren, dass davfs den Port belegt und darüber hinaus noch dem MQTT-Port?

Grüße
Jürgen

Kann es sein, dass dabei irgendwie der DAV-Prozess die FDs inherited? Das würde das Problem dann erklären. Wie mountest du das Laufwerk denn?

Auch wenn es nicht für PHP ist, erklärt es ggf. das Problem:

paresy

Danke für den Tip. Das klingt interessant. In diese Richtung werde ich mal weiter forschen. Das DAV-LW mounte ich mit

shell_exec("mount /xxx/yyy/");

Hat seit Jahren kein Problem gegeben.

Grüße
Jürgen

ok, konsequentes unmounten am Ende des Skripts behebt das Problem.
Danke
Jürgen