automatischer Restart von FHEM

Begonnen von boeho, 22 Juli 2021, 13:39:14

Vorheriges Thema - Nächstes Thema

boeho

Hallo, ich habe ab und an das mailcheck nicht die Mails abholt. Allerdings passiert das nicht generell, sondern wie zufällig bei einzelnen Personen der Familie.
Wenn ich über die WebGui ein FHEM-Stop und FHEM-Restart mache läuft alles wieder perfekt. Nach 3 Tagen oder auch nach 2 Wochen trifft es ein Postfach, was dann nicht gelesen wird.
Daran hängt aber meine Anwesenheitserkennung.
Ich suche jetzt eine Möglichkeit diese Restart zu automatisieren, vielleicht jede Nacht oder so.
Habe schon mit crontab probiert, aber sehr erfolglos, bin auch Laie im Ubuntu.
Oder geht etwas mit at-Befehl ?
Wenn jemand so etwas hat würde ich es gerne übernehmen.
Danke schon mal
boeho

Beta-User

Wenn überhaupt durch einen restart, dann sollte man sowas mAn. eher über die OS-Ebene lösen, dann bleiben wenigstens die Reading aktuell, wenn FHEM sauber beendet wird.

Vorher könntest du aber mal versuchen, ob nicht einfach ein (Re-)-Aktivieren der Verbindung ausreichend wäre, also z.B. sowas:
defmod a_reinit_maicheck at *03:15 set TYPE=mailcheck inactive;; sleep 60;; set TYPE=mailcheck active
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

Otto123

Hallo boeho,

erstmal den Tipp von Beta-User probieren aber trotzdem die Antwort auf die Frage nach crontab:
Du öffnest eine system Kommandozeile und schreibst:
sudo crontab -e
Es wird ev. noch nach dem Editor gefragt - nimm nano wenn Du es nicht besser weißt.
Es wird ein system crontab geöffnet / angelegt / editiert, da steht ein Hilfetext. Der erklärt es in etwa. Dort fügst Du unten einfach etwas an.
Was Du willst sieht dann so aus:
Startet jeden Tag um 4:00 deinen Service neu.
0 4 * * * service fhem restart
Dann schließt Du nano mit ctrl + o (schreiben) und ctrl + x (verlassen) ab.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

boeho

Danke erstenmal Euch beiden für die schnelle Antwort. Momentan neige ich zum  Restart. Der mailcheck Service ist ok,  denn wenn ich zum Bsp mit meiner Frau das Haus verlassen funktioniert es bei ihr, aber eben bei mir manchmal nicht mehr. Eine Theorie dazu habe ich nicht.
Ich probiere erst einmal den defmod, falls der Effekt nicht mehr auftritt ist es eine praktikable Lösung.
Grüße  boeho

betateilchen

Den Restart eines Dienstes wie FHEM würde ich immer in der zentralen crontab (/etc/crontab) hinterlegen und nicht in der crontab eines bestimmten Users.

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Beta-User

Irgendwie hänge ich gedanklich noch bei dieser Symptombeschreibung:
Zitat von: boeho am 22 Juli 2021, 15:04:02
Der mailcheck Service ist ok,  denn wenn ich zum Bsp mit meiner Frau das Haus verlassen funktioniert es bei ihr, aber eben bei mir manchmal nicht mehr.
Danach gibt es nur ein Device vom TYPE mailcheck? FHEM bekommt auch Infos => das dürfte demnach nicht wirklich ein (Wieder-) Verbindungsproblem zu sein, sondern das Problem scheint eher darin begründet zu sein, dass nur eine von 2 Mails ausgewertet wird, wenn die mehr oder weniger gleichzeitig eintreffen (innerhalb eines Intervalls)?
Oder es wird nur "von der Frau" eine Mail generiert, nicht aber (immer) "vom Mann"...?

Zusammengefasst: Wenn es überhaupt nur ein einziges Device vom TYPE mailcheck gibt, mag mir nicht einleuchten, warum ein FHEM-restart irgendwas an der Symptomatik ändern sollte.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

Otto123

Zitat von: boeho am 22 Juli 2021, 13:39:14
Habe schon mit crontab probiert, aber sehr erfolglos, bin auch Laie im Ubuntu.
Zitat von: betateilchen am 22 Juli 2021, 15:40:24
Den Restart eines Dienstes wie FHEM würde ich immer in der zentralen crontab (/etc/crontab) hinterlegen und nicht in der crontab eines bestimmten Users.
Ich nicht :) ich würde es Laien nicht empfehlen und ich würde /etc/crontab immer unangetastet lassen - crontab -e ist ein User Interface und sudo crontab -e legt den Job für/als root ab. Damit ist er nicht abhängig von einem bestimmten user ;)
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

betateilchen

Zitat von: Otto123 am 22 Juli 2021, 16:40:19
legt den Job für/als root ab. Damit ist er nicht abhängig von einem bestimmten user

es wäre mir völlig neu, dass "root" kein bestimmter user ist...
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

boeho

Ich habe übrigens für jeden ein eigenes mailcheck. Inzwischen geht die Mail über einen extra SMTP Account und dort per Regel in eine fhem Ordner. Die Konfiguration (Egizone, Mailprovider, skripte in FHEM ) ist bis auf die Namen und Mailadressen identisch. Ich verstehe es auch nicht. Aber nur mal so zum Grübeln, eine Ursache usw es ja haben.
boeho

Christoph Morrison

Zitat von: Otto123 am 22 Juli 2021, 16:40:19
Ich nicht :) ich würde es Laien nicht empfehlen und ich würde /etc/crontab immer unangetastet lassen - crontab -e ist ein User Interface und sudo crontab -e legt den Job für/als root ab. Damit ist er nicht abhängig von einem bestimmten user ;)

Naja, in /etc/crontab (bzw in cron.daily etc.) liegen die systemweiten Cron-Jobs, nicht die vom User root. Der kann eine eigene crontab haben und die liegt dann (z.B. bei Debian) unter /var/spool/cron/crontabs/$USER

Also wenn man wirklich user-unabhängige Jobs haben will, dann nach /etc/cron* und nicht mit crontab.

Otto123

Moin,

aber kein cronjob ist doch wirklich user-unabhängig - wesentlicher Bestandteil der /etc/crontab ist ja die Spalte user-name.
# *  *  *  *  * user-name command to be executed
17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )

Aber mag sein ich sehe das falsch, wichtig ist ja nicht der Weg dahin - sondern das es funktioniert. :)

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

boeho

Zitat von: Beta-User am 22 Juli 2021, 15:59:38
Irgendwie hänge ich gedanklich noch bei dieser Symptombeschreibung:Danach gibt es nur ein Device vom TYPE mailcheck? FHEM bekommt auch Infos => das dürfte demnach nicht wirklich ein (Wieder-) Verbindungsproblem zu sein, sondern das Problem scheint eher darin begründet zu sein, dass nur eine von 2 Mails ausgewertet wird, wenn die mehr oder weniger gleichzeitig eintreffen (innerhalb eines Intervalls)?
Oder es wird nur "von der Frau" eine Mail generiert, nicht aber (immer) "vom Mann"...?

Zusammengefasst: Wenn es überhaupt nur ein einziges Device vom TYPE mailcheck gibt, mag mir nicht einleuchten, warum ein FHEM-restart irgendwas an der Symptomatik ändern sollte.
Hallo Beta-user, ich habe 2xmailcheck, getrennte Mailaccounts und habe in Egizone unterschiedliche Radien der Heimzone. Die Mails kommen auch immer mit unterschiedlichen timestamps beim Betreten und Verlassen. Wenn alles klappt ist dieser Unterschied auch nach der Verarbeitung durch FHEM zu sehen. Ich vermute nun, dass vielleicht mailcheck eine noch größere Zeitdifferenz braucht. Ich möchte aber nicht den Egizonen Radius vergrößern.
Ich probiere erst einmal die Variante defmod. Vielleicht braucht man soetwas wie ein attr wait, um die Verarbeitung der verschiedenen mailcheck zu sichern??
VG boeho

Wernieman

D.h. Dein Handy versendet eine Mail, wenn Du die Zone verlässt? Läuft das denn Zuverlässig?
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Beta-User

Zitat von: boeho am 23 Juli 2021, 13:46:56
Vielleicht braucht man soetwas wie ein attr wait, um die Verarbeitung der verschiedenen mailcheck zu sichern??
VG boeho
Wenn es nach einem Neustart wieder klappt, dürfte es keinen Unterschied machen, wenn du alles auf einmal per einem at reinitialisierst.
Aber du hast uns bisher auch nicht verraten, wie die Weiterverarbeitung aussieht. Vielleicht ist da ein "diabled-after-trigger" gesetzt oder so was.

(Will sagen: Die Infos, die du lieferst, sind immer noch nicht vollständig geeignet, meine "trübe Glaskugel" zu erleuchten...).
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors