Autor Thema: ewiger Neustart mit systemd  (Gelesen 1045 mal)

Offline mig2

  • New Member
  • *
  • Beiträge: 49
ewiger Neustart mit systemd
« am: 17 Oktober 2022, 20:45:08 »
Hoi zusammen,
ich habe seit ein paar Wochen ein komisches Problem. Wenn der Raspberry neu bootet, wird über systemd FHEM gestartet. So ist es, dass dann alle 2-3 Minuten der Prozess von FHEM neu startet. Das ist nicht so optimal. Wenn ich den gleichen Aufruf auf der Shell als Benutzer PI oder root machen, dann läuft der Prozess ohne Probleme.
Ich habe dann auf dem Produktiven Raspberry (PI4) mal die normal verdächtigen Komponenten abgeschalten (Telegram, Talk, fhempy) hat soweit nichts gebracht.
Letzte Woche habe ich dann auf einem Ersatz Raspberry (PI3) das Betriebsystem (bullseye) per Image installiert, dann FHEM installiert, anschliessend local eine MariaDB installiert und dann die Produktive DB auf die locale Instanz kopiert. Mit dem FHEM Start ab der Shell funktioniert es. Bei einem Reboot wieder das gleiche Problem, nach 2-3 Minuten wird der FHEM Prozess neu gestartet.
Jetzt habe ich gestern den Ersatz Raspberry nochmals das aktuelles Image geladen, wie folgt:
- Download Image auf WINDOWS Rechner, dann mit WIN31DiskImager die SD Karte vorbereitet
- SD Karte in Raspberry, Ländereinstellungen vorgenommen, SSH & VCN freigeschalten, WLAN eingerichtet, Expand Filesystem
- Betriebssystem aktualisiert (sudo apt-get update / sudo apt-get upgrade)
- Nun FHEM installiert (Anleitung https://www.meintechblog.de/2016/05/fhem-server-auf-dem-raspberry-pi-in-weniger-als-einer-stunde-einrichten/ )
   - sudo apt-get -f install && sudo apt-get -y install perl-base libdevice-serialport-perl libwww-perl libio-socket-ssl-perl libcgi-pm-perl libjson-perl sqlite3 libdbd-sqlite3-perl libtext-diff-perl libtimedate-perl libmail-imapclient-perl libgd-graph-perl libtext-csv-perl libxml-simple-perl liblist-moreutils-perl fonts-liberation2 libimage-librsvg-perl libgd-text-perl libsocket6-perl libio-socket-inet6-perl libmime-base64-perl libimage-info-perl libusb-1.0-0-dev libnet-server-perl   - sudo wget http://fhem.de/fhem-6.0.deb && sudo dpkg -i fhem-6.0.debMehr wurde nicht gemacht, nach dem anschliessenden Reboot lief das System.
Nun habe ich dann in (/etc/systemd/system/fhem.service) den Aufruf auf die fhem.cfg.demo gelegt. Jetzt tritt das Problem wieder auf.

Wenn ich den Service von Hand aufrufe (systemctl start fhem), bricht dieser nach 2-3Minuten ab. Mit dem Hinweis, siehe journalctl -xe, da steht dann folgendes:
Okt 17 20:40:43 raspberrypi systemd[1]: fhem.service: start operation timed out. Terminating.
Okt 17 20:40:43 raspberrypi perl[1504]: 2022.10.17 20:40:43.174 0: Server shutdown
Okt 17 20:40:43 raspberrypi systemd[1]: fhem.service: Failed with result 'timeout'.
Subject: Unit failed
Defined-By: systemd
Support: https://www.debian.org/support

The unit fhem.service has entered the 'failed' state with result 'timeout'.
Okt 17 20:40:43 raspberrypi systemd[1]: Failed to start FHEM Home Automation.
Subject: A start job for unit fhem.service has failed

Ich habe schon vor zwei Wochen nach Systemd und Fhem Timeout gesucht. Leider habe ich nicht das richtige gefunden.

Ich hoffe, jemand kann mir da weiterhelfen :)

fhem.service
# $Id: fhem.service 19235 2019-04-21 13:26:17Z betateilchen $

[Unit]
Description=FHEM Home Automation
Wants=network.target
After=network.target
#Requires=postgresql.service
#After=postgresql.service
#Requires=mysql.service
#After=mysql.service

[Service]
Type=forking
User=fhem
Group=dialout
WorkingDirectory=/opt/fhem
ExecStart=/usr/bin/perl fhem.pl fhem.cfg.demo
#ExecStart=/usr/bin/perl fhem.pl configDB
Restart=always

[Install]
WantedBy=multi-user.target
RPi 3 - CUL 868 (Pigator) - ZWave (RaZberry2)
Homematic:HM-SEC-SC-2 / HM-SEC-SCo / HM-TC-IT-WM-W-EU / HM-ES-PMSw1-Pl-DN-R5
Z-Wave: FGR222 (010f-0302-1000) / FGS223 (010f-0203-1000) / FGD212 (010f-0102-1000) /FGKF601 (010f-1001-1000) / KeyFob / FGS212 (010f-0402-1002)

Offline Beta-User

  • Developer
  • Hero Member
  • ****
  • Beiträge: 19667
Antw:ewiger Neustart mit systemd
« Antwort #1 am: 17 Oktober 2022, 22:16:32 »
Versuch's doch zur Übung einfach nochmal und nimm die Anleitung von hier: https://wiki.fhem.de/wiki/Raspberry_Pi

Im Wiki steht vermutlich auch ein Hinweis, warum der Pi erst mal nicht wirklich hochkommt und dann (ziemlich sicher nach genau 90 Sekunden!) neu startet... (das mit den 90 Sekunden sollte auch aus dem FHEM-log zu erkennen sein).
Server: HP-T620@Debian 11, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Offline mig2

  • New Member
  • *
  • Beiträge: 49
Antw:ewiger Neustart mit systemd
« Antwort #2 am: 18 Oktober 2022, 05:47:19 »
Guten Morgen Beta-User,
ich werde das mal genau mit dieser Anleitung durchspielen. Sollte bis heute Abend erledigt sein :)

Danke für den Typ
RPi 3 - CUL 868 (Pigator) - ZWave (RaZberry2)
Homematic:HM-SEC-SC-2 / HM-SEC-SCo / HM-TC-IT-WM-W-EU / HM-ES-PMSw1-Pl-DN-R5
Z-Wave: FGR222 (010f-0302-1000) / FGS223 (010f-0203-1000) / FGD212 (010f-0102-1000) /FGKF601 (010f-1001-1000) / KeyFob / FGS212 (010f-0402-1002)

Offline mig2

  • New Member
  • *
  • Beiträge: 49
Antw:ewiger Neustart mit systemd
« Antwort #3 am: 18 Oktober 2022, 14:49:40 »
ich habe nun das ganze System mit der Anleitung aus dem WKI aufgesetzt. Wenn nun die Standard fhem.cfg mit dem Service aufgerufen wird. Läuft es durch.
Sobald ich die Datei fhem.service (als root) auf fhem.cfg.demo anpasse. Wird der Prozess alle 2-3 Minuten neu gestartet.

pi@fhem2:~ $ psx fhem
avahi      365     1  0 14:41 ?        00:00:00 avahi-daemon: running [fhem2.local]
fhem       485     1  9 14:41 ?        00:00:05 /usr/bin/perl fhem.pl fhem.cfg.demo
pi         650   638  0 14:42 pts/0    00:00:00 grep --color=auto fhem
pi@fhem2:~ $ psx fhem
avahi      365     1  0 14:41 ?        00:00:00 avahi-daemon: running [fhem2.local]
fhem       652     1 11 14:43 ?        00:00:07 /usr/bin/perl fhem.pl fhem.cfg.demo
pi         660   638  0 14:44 pts/0    00:00:00 grep --color=auto fhem
pi@fhem2:~ $ psx fhem
avahi      365     1  0 14:41 ?        00:00:00 avahi-daemon: running [fhem2.local]
fhem       661     1 13 14:44 ?        00:00:05 /usr/bin/perl fhem.pl fhem.cfg.demo
pi         664   638  0 14:45 pts/0    00:00:00 grep --color=auto fhem

psx ist ein alias für ps -ef | grep

Könnte ich FHEM bei einem Systemstart auch anders als mit systemd starten?
RPi 3 - CUL 868 (Pigator) - ZWave (RaZberry2)
Homematic:HM-SEC-SC-2 / HM-SEC-SCo / HM-TC-IT-WM-W-EU / HM-ES-PMSw1-Pl-DN-R5
Z-Wave: FGR222 (010f-0302-1000) / FGS223 (010f-0203-1000) / FGD212 (010f-0102-1000) /FGKF601 (010f-1001-1000) / KeyFob / FGS212 (010f-0402-1002)

Offline rudolfkoenig

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 26037
Antw:ewiger Neustart mit systemd
« Antwort #4 am: 18 Oktober 2022, 15:10:34 »
Zitat
Könnte ich FHEM bei einem Systemstart auch anders als mit systemd starten?
Ja, z.Bsp. mit folgendem crontab Eintrag des fhem Benutzers:
@reboot cd /opt/fhem; perl fhem.pl fhem.cfg
Will damit nicht sagen, dass das besser als systemd ist.

Nachtrag: ich wuerde eher pruefen, warum FHEM mit systemd sich beendet, indem ich das FHEM-Log durchlese.
« Letzte Änderung: 18 Oktober 2022, 15:12:09 von rudolfkoenig »

Offline Otto123

  • Tester
  • Hero Member
  • ****
  • Beiträge: 21768
  • schon mal restore trainiert?
    • Otto's Technik Blog
Antw:ewiger Neustart mit systemd
« Antwort #5 am: 18 Oktober 2022, 15:19:20 »
Sobald ich die Datei fhem.service (als root) auf fhem.cfg.demo anpasse. Wird der Prozess alle 2-3 Minuten neu gestartet.
War das denn der Ansatz fhem.cfg.demo ? Die schaut man sich doch eher in einem interaktive Start mal an und dann ist es wieder gut.
Viele Grüße aus Leipzig
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Offline Beta-User

  • Developer
  • Hero Member
  • ****
  • Beiträge: 19667
Antw:ewiger Neustart mit systemd
« Antwort #6 am: 18 Oktober 2022, 15:48:57 »
Du hast in der Sig was stehen von einem Razberry. Stimmt das noch? Hast du die serielle Schnittstelle konfiguriert wie im Wiki beschrieben? Hast du initialUsbCheck deaktiviert?

(Und kannst du dich mal mit den üblichen Formatierungen für Beiträge hier befassen).
Server: HP-T620@Debian 11, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Offline mig2

  • New Member
  • *
  • Beiträge: 49
Antw:ewiger Neustart mit systemd
« Antwort #7 am: 18 Oktober 2022, 16:28:05 »
mal vielen Dank für die Vielen Antworten  ;)
War das denn der Ansatz fhem.cfg.demo ? Die schaut man sich doch eher in einem interaktive Start mal an und dann ist es wieder gut.

Damit möche ich noch nichts von meiner Konfiguration nehmen, damit ich sicher bin, dass es nicht an der Config liegen würde. Ich setze auch logdb und configdb ein. Das ist aber bei diesen Raspberry noch nicht eingerichtet. Da ist wirklich nur die minimal Konfiguration von FHEM drauf.

Du hast in der Sig was stehen von einem Razberry. Stimmt das noch? Hast du die serielle Schnittstelle konfiguriert wie im Wiki beschrieben? Hast du initialUsbCheck deaktiviert?

Am Produktiven Raspberry PI4 ist dieses Modul am laufen. Bei dem Ersatz Raspberry PI3 ist die Karte nicht vorhanden. InitialUsbCheck ist in der Demo config nicht vorhanden. Die Serielle Schnittstelle wurde anhand vom WIKI konfiguriert und kontrolliert.

Zitat
(Und kannst du dich mal mit den üblichen Formatierungen für Beiträge hier befassen).
Das tut mir leid, ich werde schauen, was ich verbessern könnte.

 
RPi 3 - CUL 868 (Pigator) - ZWave (RaZberry2)
Homematic:HM-SEC-SC-2 / HM-SEC-SCo / HM-TC-IT-WM-W-EU / HM-ES-PMSw1-Pl-DN-R5
Z-Wave: FGR222 (010f-0302-1000) / FGS223 (010f-0203-1000) / FGD212 (010f-0102-1000) /FGKF601 (010f-1001-1000) / KeyFob / FGS212 (010f-0402-1002)

Offline Otto123

  • Tester
  • Hero Member
  • ****
  • Beiträge: 21768
  • schon mal restore trainiert?
    • Otto's Technik Blog
Antw:ewiger Neustart mit systemd
« Antwort #8 am: 18 Oktober 2022, 16:36:37 »
Damit möche ich noch nichts von meiner Konfiguration nehmen, damit ich sicher bin, dass es nicht an der Config liegen würde. Ich setze auch logdb und configdb ein. Das ist aber bei diesen Raspberry noch nicht eingerichtet. Da ist wirklich nur die minimal Konfiguration von FHEM drauf.
Ich finde den Ansatz komisch. Nimm lieber eine leere fhem.cfg und fange an ein paar Definitionen die Du testen willst, von Deiner Installation zu übernehmen (Stichwort Raw Defintion).
Oder beende FHEM und starte die demo von Hand in der Kommandozeile.
Geht auch im debug Modus https://wiki.fhem.de/wiki/FHEM_startet_nicht_-_Tipps_zur_Fehlersuche

Original cfg
wget -qO fhem.cfg https://svn.fhem.de/fhem/trunk/fhem/fhem.cfg
Was Du beim posten verbessern kannst steht hier https://forum.fhem.de/index.php/topic,71806.0.html
« Letzte Änderung: 18 Oktober 2022, 16:40:36 von Otto123 »
Viele Grüße aus Leipzig
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Offline Beta-User

  • Developer
  • Hero Member
  • ****
  • Beiträge: 19667
Antw:ewiger Neustart mit systemd
« Antwort #9 am: 18 Oktober 2022, 16:46:20 »
Ergänzend zu dem was Otto geschrieben hat: Wenn FEHM von der Kommandozeile sauber startet, aber nicht von systemd aus, könnte es an den Benutzerrechten liegen, die ggf. beim Starten von der Kommandozeile "verbogen" werden (eher: zusätzlich angelegt).

Und/oder es gibt irgendwas anderes, was eine Schnittstelle belegt (7072? Aber dann müßte eigentlich was im Log stehen. Legt aber die demo gar nicht an, oder?)
Server: HP-T620@Debian 11, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Offline mig2

  • New Member
  • *
  • Beiträge: 49
Antw:ewiger Neustart mit systemd
« Antwort #10 am: 18 Oktober 2022, 17:04:23 »
Ihr habt ja viele Fragen  ;)
Ich finde den Ansatz komisch. Nimm lieber eine leere fhem.cfg und fange an ein paar Definitionen die Du testen willst, von Deiner Installation zu übernehmen (Stichwort Raw Defintion).
Oder beende FHEM und starte die demo von Hand in der Kommandozeile.
Da ich mit configdb und logdb arbeite, möchte ich damit eine Fehlerkonfiguration auschliessen.  Mit der originalen fhem.cfg geht der systemd Start.
Zitat
Geht auch im debug Modus https://wiki.fhem.de/wiki/FHEM_startet_nicht_-_Tipps_zur_Fehlersuche
Aus diesem Beitrag habe ich das mit der fhem.cfg.demo. Das wird im letzten Absatz erwähnt.

Und/oder es gibt irgendwas anderes, was eine Schnittstelle belegt (7072? Aber dann müßte eigentlich was im Log stehen. Legt aber die demo gar nicht an, oder?)
Am Raspberry ist nichts eingesteckt (Ausser Stromkabel). WLAN ist noch konfiguriert.


RPi 3 - CUL 868 (Pigator) - ZWave (RaZberry2)
Homematic:HM-SEC-SC-2 / HM-SEC-SCo / HM-TC-IT-WM-W-EU / HM-ES-PMSw1-Pl-DN-R5
Z-Wave: FGR222 (010f-0302-1000) / FGS223 (010f-0203-1000) / FGD212 (010f-0102-1000) /FGKF601 (010f-1001-1000) / KeyFob / FGS212 (010f-0402-1002)

Offline rudolfkoenig

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 26037
Antw:ewiger Neustart mit systemd
« Antwort #11 am: 18 Oktober 2022, 17:06:36 »
Zitat
[...] Aber dann müßte eigentlich was im Log stehen. Legt aber die demo gar nicht an, oder?
fhem.cfg.demo ist fuers Starten aus dem Terminal gedacht.
Wegen "attr global logfile -" wird das Log auf dem Terminal geschrieben, FHEM laeuft deswegen auch nicht im Hintergrund.
Ich gehe davon aus, dass systemd mit dieser Konfiguration nicht zurechtkommt.
Zustimmung Zustimmung x 1 Informativ Informativ x 1 Liste anzeigen

Offline mig2

  • New Member
  • *
  • Beiträge: 49
Antw:ewiger Neustart mit systemd
« Antwort #12 am: 18 Oktober 2022, 17:19:36 »
Da die Grundkonfiguration stabil läuft, werde ich nun auf dieser Aufsetzen. Werden nun mariadb einrichten, dann Grundfunktion übernehmen. Anschliessend einzelne Komponenten aus der Produktiven Instanzen übernehmen. Mal schauen, ob ich so den Fehler finde.
RPi 3 - CUL 868 (Pigator) - ZWave (RaZberry2)
Homematic:HM-SEC-SC-2 / HM-SEC-SCo / HM-TC-IT-WM-W-EU / HM-ES-PMSw1-Pl-DN-R5
Z-Wave: FGR222 (010f-0302-1000) / FGS223 (010f-0203-1000) / FGD212 (010f-0102-1000) /FGKF601 (010f-1001-1000) / KeyFob / FGS212 (010f-0402-1002)

Offline Otto123

  • Tester
  • Hero Member
  • ****
  • Beiträge: 21768
  • schon mal restore trainiert?
    • Otto's Technik Blog
Antw:ewiger Neustart mit systemd
« Antwort #13 am: 18 Oktober 2022, 17:20:11 »
Aus diesem Beitrag habe ich das mit der fhem.cfg.demo. Das wird im letzten Absatz erwähnt.
Aber da steht nichts von systemd, da steht die Kommandozeile beschrieben. ;)
Viele Grüße aus Leipzig
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Offline mig2

  • New Member
  • *
  • Beiträge: 49
Antw:ewiger Neustart mit systemd
« Antwort #14 am: 29 November 2022, 19:21:38 »
Heute konnte ich nach langen Suchen ein Workaround umsetzen. Ich habe in fhem.service die Zeile Typ:forking auf Typ:simple umgestellt.
Seit dem habe ich keine Probleme mehr. Vielen Dank für alle Infos
RPi 3 - CUL 868 (Pigator) - ZWave (RaZberry2)
Homematic:HM-SEC-SC-2 / HM-SEC-SCo / HM-TC-IT-WM-W-EU / HM-ES-PMSw1-Pl-DN-R5
Z-Wave: FGR222 (010f-0302-1000) / FGS223 (010f-0203-1000) / FGD212 (010f-0102-1000) /FGKF601 (010f-1001-1000) / KeyFob / FGS212 (010f-0402-1002)

 

decade-submarginal