Dateideskriptor

Begonnen von matrois, 18 Februar 2018, 15:02:28

Vorheriges Thema - Nächstes Thema

matrois

Hallo zusammen,
ich nutze seit einiger Zeit FHEM (Ver. 5.8 ) mit etlichen Homematic-Komponenten zusammen. Die Homematic-Komponenten sind über ein HMLAN und ein HMUART an FHEM angebunden. FHEM läuft bei mir neben ein paar anderen Dingen auf einem Raspberry PI 3. Die Konfiguration ist mittels configDB in einer MySQL-Datenbank gespeichert. Ich habe einen zweiten Raspberry PI 3 auf dem ebenfalls FHEM (auch mit configDB, alles möglichst gleich) läuft und ich Sachen ausprobiere bevor diese neuen Dinge mein "produktives System" zerschießen...

In der Logdatei des Hauptsystems ist mir jetzt aufgefallen, dass dort Meldungen auftauchen, die ich nicht "einsortieren" kann.

Hier ein Auszug aus meiner Logdatei direkt nach einem Neustart

2018.02.18 14:17:36 0: Featurelevel: 5.8
2018.02.18 14:17:36 0: Server started with 218 defined entities (fhem.pl:16204/2018-02-17 perl:5.024001 os:linux user:fhem pid:4240)
2018.02.18 14:17:37 3: telnetForBlockingFn_1518959857.07168: port 40151 opened
2018.02.18 14:17:37 1: HMLAN_Parse: HMLAN new condition ok
...
[StatusRequestanfragen von Rauchmeldern rausgekürzt]
...
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.


Die Meldung "Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.":
- Wo kommt das her?
- Warum ist kein Zeitstempel dabei?
- Wie kann ich das abstellen?

Die motd-Meldung bei diesem System nach einem Neustart ist "1" (s. angehängten Screenshot). Hängt das evtl. zusammen? Wo kommt die motd=1 her?

Die Suche liefert zu "Dateideskriptor" leider keine passenden Treffer. Deshalb habe ich diesen Thread gestartet. Für jeden Hinweis bedanke ich mich im Voraus.
Viele Grüße,
matrois.
FHEM: 5.9@docker@qnap | 5.9@raspberry pi III
IO: HMLAN | HMUART | Jeelink | MySensors
CUL_HM: CC-RT-DN | SEC-SCo | Sen-DB-PCB | TC-WM-W-EU
Module / Konfig: configdb | FHEMWEB | FRITZBOX | FileLog | HMinfo | IPCAM | SIP | Abfall | Tablet UI - FUIP | Sonoff/Tasmota

CoolTux

Suche nach der Ausgabe doch mal in den FHEM Dateien.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

matrois

Hallo CoolTux,
danke für Deinen Tipp.

Was genau meinst Du mit "nach der Ausgabe"? Mir fällt auf, dass ich vergaß zu erwähnen, dass die Meldungen nach jedem Start im Log auftauchen. Also kann ich quasi sofort nach dem Start von FHEM suchen, oder meintest Du etwas anderes?

Ich weiß allerdings nicht wo und nach was ich suchen soll. Im FHEM Verzeichnis finde ich keinen Dateideskriptor...

Viele Grüße,
matrois.
FHEM: 5.9@docker@qnap | 5.9@raspberry pi III
IO: HMLAN | HMUART | Jeelink | MySensors
CUL_HM: CC-RT-DN | SEC-SCo | Sen-DB-PCB | TC-WM-W-EU
Module / Konfig: configdb | FHEMWEB | FRITZBOX | FileLog | HMinfo | IPCAM | SIP | Abfall | Tablet UI - FUIP | Sonoff/Tasmota

CoolTux

Vergiss was ich gesagt habe. Die Meldung kommt nicht aus FHEM sondern vom Linuxsystem. Gib die Meldung mal bei Google ein dann findest Du so einiges.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

CoolTux

Hat Dein FHEM Server ein X-Window System aktiv?
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

matrois

@CoolTux:

Spricht es nicht dagegen, dass es vom Linuxsystem kommt, dass es in der FHEM Logdatei ist?

Wenn Du diese Suchergebnisse meinst:
https://www.google.de/search?q=%22Dateideskriptor%2C+der+auf+die+Konsole+verweist%2C+konnte+nicht+gefunden+werden.%22&oq=%22&aqs=chrome.0.69i59j69i57j69i59.1599j0j7&sourceid=chrome&ie=UTF-8

Die hatte ich auch schon gesehen, aber es ist kein X-Window System aktiv und auch keins installiert. Zugriff auf den Raspi habe ich nur über ssh (headless Betrieb auf der Basis von Raspbian Lite). Daran kann es leider auch nicht liegen.
FHEM: 5.9@docker@qnap | 5.9@raspberry pi III
IO: HMLAN | HMUART | Jeelink | MySensors
CUL_HM: CC-RT-DN | SEC-SCo | Sen-DB-PCB | TC-WM-W-EU
Module / Konfig: configdb | FHEMWEB | FRITZBOX | FileLog | HMinfo | IPCAM | SIP | Abfall | Tablet UI - FUIP | Sonoff/Tasmota

CoolTux

Nicht unbedingt. Die Fehlermeldung kommt nicht von FHEM kann aber FHEM betreffen. Ich meine damit das die Meldung nicht aktiv als Logausgabe in einem Modul steht.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

matrois

Gibt es eine Möglichkeit herauszufinden von welchem Modul die Meldung kommt? Bei einer Logmeldung wie


2018.02.18 14:17:37 3: CUL_HM set sd_buero statusRequest


ist es klar von welchem Modul die Meldung kommt und durch den Timestamp ist auch klar wann die Meldung entstand. Die "Dateideskriptor"-Meldungen stehen genau so wie oben (ohne Timestamp und ohne weitere Hinweise im FHEM-Log).

FHEM: 5.9@docker@qnap | 5.9@raspberry pi III
IO: HMLAN | HMUART | Jeelink | MySensors
CUL_HM: CC-RT-DN | SEC-SCo | Sen-DB-PCB | TC-WM-W-EU
Module / Konfig: configdb | FHEMWEB | FRITZBOX | FileLog | HMinfo | IPCAM | SIP | Abfall | Tablet UI - FUIP | Sonoff/Tasmota

CoolTux

Wie gesagt die Meldung kommt nicht aus einem Modul heraus, es kann aber sein das ein Modul diese Meldung welche vom System kommt aus löst. Leider weiß ich nicht wie man das raus finden kann.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

matrois

Ich probiere auch mit apptime und habe dabei bemerkt, dass die Meldung "Dateideskriptor" nicht direkt nach dem Start kommt. Ich habe nach einem Neustart als erstes recht zügig den Befehl "apptime" abgesetzt. Danach habe ich dieses Log:


2018.02.18 20:55:10 1: PERL WARNING: Subroutine HandleTimeout redefined at ./FHEM/98_apptime.pm line 42.
2018.02.18 20:55:10 1: PERL WARNING: Subroutine CallFn redefined at ./FHEM/98_apptime.pm line 151.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.
Dateideskriptor, der auf die Konsole verweist, konnte nicht gefunden werden.


Apptime hat auch noch Fehlermeldungen übrig...

update check sagt


fhem
nothing to do...

fhemtabletui
nothing to do...
FHEM: 5.9@docker@qnap | 5.9@raspberry pi III
IO: HMLAN | HMUART | Jeelink | MySensors
CUL_HM: CC-RT-DN | SEC-SCo | Sen-DB-PCB | TC-WM-W-EU
Module / Konfig: configdb | FHEMWEB | FRITZBOX | FileLog | HMinfo | IPCAM | SIP | Abfall | Tablet UI - FUIP | Sonoff/Tasmota

CoolTux

Wann hast Du Update genacht? Heute im laufe des Tages oder gestern?
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

CoolTux

Mach mal bitte einen kompletten neustart des Servers.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Amenophis86

Kann er nicht mit stacktrace schauen, wer die Meldung verursacht?
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

matrois

#13
Ich glaube ich habe die Lösung gefunden. HMUART greift auf /dev/ttyAMA0 zu, welches man als Dateideskriptor bezeichnen kann. Die Berechtigungen von ttyAMA0 sind root:dialout bei 660. Der fhem-Benutzer war nicht in der Dialoutgruppe... Seit einem


addgroup fhem dialout


taucht die Dateideskriptor-Meldung nicht mehr im Log auf.

Nach ein paar Neustarts taucht die Meldung wieder auf... :-(
FHEM: 5.9@docker@qnap | 5.9@raspberry pi III
IO: HMLAN | HMUART | Jeelink | MySensors
CUL_HM: CC-RT-DN | SEC-SCo | Sen-DB-PCB | TC-WM-W-EU
Module / Konfig: configdb | FHEMWEB | FRITZBOX | FileLog | HMinfo | IPCAM | SIP | Abfall | Tablet UI - FUIP | Sonoff/Tasmota

CoolTux

Zitat von: Amenophis86 am 19 Februar 2018, 06:26:29
Kann er nicht mit stacktrace schauen, wer die Meldung verursacht?

Ich denke eher nicht. Aber ein Versuch ist es auf alle Fälle Wert.
Also einmal bitte stacktrace aktivieren
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net