Fehler in FHEM/Raspi - System überwaschen oder zyklischer Neustart//Empfehlung?

Begonnen von Jogi, 10 November 2018, 13:56:43

Vorheriges Thema - Nächstes Thema

DS_Starter

Hallo Gisbert,

das habe ich bei mir auch manchmal nach einem Reboot.
Da ich bis jetzt auch nicht gefunden habe woran es liegt, ahbe ich mir einen Workaround gebaut und restarte den watchdog mit einem Notify beim Start:


defmod N.watchdog.service.restart notify .*watchdog:.*canceled.* set watchdog start
attr N.watchdog.service.restart alias Restart Watchdog-Service
attr N.watchdog.service.restart disable 0
attr N.watchdog.service.restart readLog 1
attr N.watchdog.service.restart room Dienste->Allgemein
attr N.watchdog.service.restart verbose 2


Damit ist die Sache für mich ok. Vllt. finde ich noch etwas, aber momentan bin ich mit anderen Dingen beschäftigt.

Grüße
Heiko
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Gisbert

Hallo Heiko,

vielen Dank für deine schnelle Antwort.
Immerhin gut zu wissen, dass es anscheinend nicht so einfach zu beheben ist, schon mal gar nicht für mich.
Ich hab deinen Workaround gleich übernommen.

Viele Grüße Gisbert
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY

en-trust

Alles mal so übernommen. Bekommen nun aber einen Error im State, wo mir absolut der Durchblick fehlt.

Internals:
   CFGFN     
   DEF        watchdog
   FUUID      5f1822bf-f33f-e9d9-a123-55c8adb8c65ab977
   NAME       fhem.watchdog
   NOTIFYDEV  global
   NR         1888
   NTFY_ORDER 50-watchdog
   SERVICENAME watchdog
   STATE      error
   TYPE       serviced
   VERSION    1.2.5
   READINGS:
     2020-07-22 14:01:53   error           We trust you have received the usual lecture from the local System Administrator. It usually boils down to these three things: #1) Respect the privacy of others. #2) Think before you type. #3) With great power comes great responsibility. sudo: no tty present and no askpass program specified
     2020-07-22 14:01:53   state           error
   helper:
Attributes:
   alias      Service watchdog
   cmdIcon    restart:rc_REPEAT stop:rc_STOP status:rc_INFO start:rc_PLAY
   comment    startet und stoppt den Linux watchdog (http://sds1.myds.me/MediaWiki/index.php?title=Watchdog)
automatisch bei start/stop von FHEM.
Start mit 90s Verzögerung da erst AT "heartbeat" laufen muss um die Controldatei zu touchen.
   devStateIcon Initialized|status:light_question error|failed:ios-NACK running:ios-on-green:stop stopped:ios-off:start stopping:ios-set_off-green .*starting:ios-set_on
   group      Software
   icon       hue_room_garage
   room       Services
   serviceAutostart 90
   serviceAutostop 10
   serviceGetStatusOnInit 1
   userattr   genericDeviceType homebridgeMapping:textField-long
   webCmd     start:restart:stop:status

MadMax-FHEM

Schon mal mit der Fehlermeldung google bemüht!?

Nein?

Ich schätze: fhem darf nicht 'sudo' ohne Passwort (zumindest bzgl. service start)

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

en-trust

Ich habe gegoogled bin aber daraus nicht schlau geworden. Wieso will fhem per sudo etwas tun ? Ich all den Beschreibungen zu der watchdog einrichtung stand nichts von sudo bzw. wie man fhem dementsprechend konfiguriert :(

MadMax-FHEM

Naja, wenn du systemctl start servicname auf der Console ausführen willst, brauchst du root Rechte -> sudo...

Ebenso fhem, welches mit dem verwendeten Modul genau das tut...

EDIT: was übrigens beim verwendeten Modul serviced beschrieben ist https://forum.fhem.de/index.php/topic,79952.msg719659.html#msg719659

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

en-trust

Genau der Link hat wohl noch in einer der Beschreibungen gefehlt. Anyway...

Ich nutze vermutlich systemctl und lt. Beschreibung soll die /etc/sudoers angepasst werden. da steht bei mir aber schon ein eintrag

# User alias specification
fhem    ALL=NOPASSWD: ALL


Ist das nicht gleichbedeutend mit ... ?

fhem ALL=(ALL) NOPASSWD:/bin/systemctl

MadMax-FHEM

Wie hast du den Eintrag in die sudoers gemacht!?

Tatsächlich DIREKT in die sudoers!?

Bearbeiten besser (ausschließlich) mittles visudo!
Weil dabei auch checks gemacht werden...

Aktuell ist es eher so: jeder User hat eine eigene Datei unter /etc/sudoers.d/ (der User pi sollte dort schon eine haben)...

Eventuell mal bzgl. sudoers etc. informieren!

Schau dir doch mal die beiden Einträge an!!

Und gleichbedeutend!?
NEIN!!

Das eine soll (aber stimmt wohl nicht ;) ) ALLES OHNE PASSWORT erlauben...
...der Eintrag im Link für das Modul eben nur systemctl...

EDIT: das wäre wohl richtig(er)
fhem ALL=(ALL) NOPASSWD: ALL

EDIT: aber macht auch deutlich weit auf!!!!!

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

en-trust

Also hab nochmal geschaut. Es gibt nur /etc/sudoers und diese enthält....

# User alias specification
fhem    ALL=NOPASSWD: ALL

# Cmnd alias specification

# User privilege specification
root    ALL=(ALL:ALL) ALL
fhem    ALL=(ALL) NOPASSWD: ALL

Wernieman

....
fhem    ALL=NOPASSWD: ALL
...
fhem    ALL=(ALL) NOPASSWD: ALL


Mache bitte nur EINE Zeile ... sudo arbeitet die Config von oben nach unten ab. Die erste Zeile die trifft .... und die bitte so, wie MadMax schrieb.

Trotzdem die Empfehlung:
1. Arbeite nicht mit der /etc/sudoers sondern baue Dir eine eigene unter /etc/sudoers.d. Die braucht auch nur FHEM-Config zu enthalten. Wird automatisch geladen.
2. Nicht global öffnen! Ist beinahe schlimmer, als fhem unter root arbeiten zu lassen (was schon katastrophal wäre)
- 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

en-trust

Ich habe es jetzt erstmal bei der einen sudoers belassen, bis es funktioniert.
Auch wenn ich nur fhem    ALL=(ALL) NOPASSWD: ALL verwende hat das keinerlei Auswirkung. :'(

Wernieman

- 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

en-trust


Wernieman

Was sagt das System bei den üblichen Verdächtigen? syslog, kern.log etc ...

bei einem normalen Debian-Pi ist es z.B. so eingerichtet: /etc/sudoers.d/010_pi-nopasswd
pi ALL=(ALL) NOPASSWD: ALL
- 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

Wuppi68

Zitat von: en-trust am 23 Juli 2020, 14:29:13
Über die Konsole mit sudo nano /etc/sudoers

huh,

bitte nicht einfach von Hand die sudoers Datei bearbeiten ...
Ein Syntax Fehler und Du bist raus

am besten mit sudo visudo
Jetzt auf nem I3 und primär Homematic - kein Support für cfg Editierer

Support heißt nicht wenn die Frau zu Ihrem Mann sagt: Geh mal bitte zum Frauenarzt, ich habe Bauchschmerzen