Hallo, bisher habe ich alle Probleme so lösen können, doch jetzt stehe ich vor einem Rätsel.
Meine Installation befindet sich auf einer virtuellen Raspberry Buster-Installation in einer VirtualBox-VM auf einem Windows-System, nachdem mein Raspberry den Geist aufgegeben hat. Alles lief problemlos.
Wegen vermehrten Meldungen vermuteter anderer FHEM-Installationen habe ich mich eingelesen und wollte die Standard-HMID meiner Installation ändern. Alle Devices habe ich mit dem Befehl "set <dev regSet pairCentral <neueNR>" zur Änderung veranlasst.
Danach habe ich die HMID der VCCUund meines HM-USB-Stick geändert und FHEM veranlasst neu zu starten.
Ich kam dann nicht mehr per Web auf mein FHEM.
Da ich vermutete, dass es unter Umständen mit meinem USB-Stick und der Weiterreichung durch Virtualbox an FHEM lag, startete ich den gesamten Rechner und die Virtualbox-Installationen neu.
Auch dies führte nicht zum Erfolg.
Ich fand dann den Hinweis auf einen Start von FHEM mit der Ausgabe auf STDOUT. Um andere Fehler auszuschließen, habe ich die 99_MyUtils.pm umbenannt. Ich bekomme folgenden Fehler zum Schluß angezeigt:
Undefined subroutine &main::trim called at /opt/fhem/FHEM/98_version.pm line 70
Gesamtes STDOUT habe ich angehangen
Ich habe keine Idee wo ich jetzt weiter suchen soll. Wer kann mir einen Hinweis geben?
Hi,
wenn Dein System noch auf der SD Card des raspberry wäre, würde ich sagen, die SD Card ist kaputt.
Dein Vorgehen ist mir völlig unklar, nichts von dem was Du getan hast erscheint mir irgendwie logisch!?
Kannst Du bitte nach dem Artikel (https://wiki.fhem.de/wiki/FHEM_startet_nicht_-_Tipps_zur_Fehlersuche)vorgehen und ein paar klare Informationen liefern?
Gruß Otto
Hallo,
genau diesen Teil habe ich ja gemacht und bin bis zu "Fehlernachrichten von FHEM bei dessen Start analysieren" gekommen.
Die angehängte Datei "Test" enthält die Ausgabe von STDOUT nach der Eingabe von "perl fhem.pl fhem.cfg.debug".
Nur kann ich mit dieser Ausgabe nichts mehr anfangen.
Und aus welcher Deiner Beschreibung sollte ich das entnehmen? :'(
Du hast jetzt offenbar nur zu Punkt 4.2 eine Info geliefert - was ist mit den Punkten davor?
Ich denke Den Punkt 4.2 muss man mit root Rechten starten sonst stimmen die Rechte nicht weil FHEM nicht auf den User fhem umschalten kann.
Gruß Otto
Hallo,
Sorry, ich dachte es würde sich aus der Beschreibung ergeben, aber hier nun der Reihe nach:
zu 1. Es läuft kein Prozess
zu 1.1 service fhem status
● fhem.service - FHEM Home Automation
Loaded: loaded (/etc/systemd/system/fhem.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Tue 2020-09-01 20:33:13 CEST; 9min ago
Process: 1259 ExecStart=/usr/bin/perl fhem.pl fhem.cfg (code=exited, status=0/SUCCESS)
Main PID: 1260 (code=exited, status=255/EXCEPTION)
Sep 01 20:33:13 RaspThe systemd[1]: fhem.service: Service RestartSec=100ms expired, sched
Sep 01 20:33:13 RaspThe systemd[1]: fhem.service: Scheduled restart job, restart counter
Sep 01 20:33:13 RaspThe systemd[1]: Stopped FHEM Home Automation.
Sep 01 20:33:13 RaspThe systemd[1]: fhem.service: Start request repeated too quickly.
Sep 01 20:33:13 RaspThe systemd[1]: fhem.service: Failed with result 'exit-code'.
Sep 01 20:33:13 RaspThe systemd[1]: Failed to start FHEM Home Automation.
zu 2. erübrigt sich damit
zu 3. die Dateirechte wurden zur Vorsicht mit dem angegbenen Befehl gesetzt.
zu 4.1 Ausschnitt aus dem log:
2020.09.01 20:33:08 1: Including fhem.cfg
2020.09.01 20:33:08 2: eventTypes: loaded 4169 events from /opt/fhem/log/eventTypes.txt
2020.09.01 20:33:08 1: HMLAN_Parse: hmusb new condition disconnected
2020.09.01 20:33:08 1: HMLAN_Parse: hmusb new condition init
2020.09.01 20:33:08 1: usb create starting
2020.09.01 20:33:08 1: PERL WARNING: can't getattr: Input/output error at /opt/fhem/FHEM/DevIo.pm line 433.
2020.09.01 20:33:08 1: CUL: Can't open /dev/ttyS0: Input/output error
2020.09.01 20:33:08 1: CUL: Can't open /dev/ttyS1: Input/output error
2020.09.01 20:33:08 1: CUL: Can't open /dev/ttyS2: Input/output error
2020.09.01 20:33:08 1: CUL: Can't open /dev/ttyS3: Input/output error
2020.09.01 20:33:08 1: usb create end
Undefined subroutine &main::trim called at /opt/fhem/FHEM/98_version.pm line 70.
zu 4.2 noch mal die komplette AUsgabe:
pi@RaspThe:/opt/fhem $ sudo perl fhem.pl fhem.cfg.debug
2020.09.01 20:54:09 1: Including fhem.cfg.debug
2020.09.01 20:54:10 2: eventTypes: loaded 4169 events from /opt/fhem/log/eventTypes.txt
2020.09.01 20:54:10 1: HMLAN_Parse: hmusb new condition disconnected
2020.09.01 20:54:10 1: HMLAN_Parse: hmusb new condition init
2020.09.01 20:54:10 1: usb create starting
2020.09.01 20:54:10 1: PERL WARNING: can't getattr: Input/output error at /opt/fhem/FHEM/DevIo.pm line 433.
2020.09.01 20:54:10 1: CUL: Can't open /dev/ttyS0: Input/output error
2020.09.01 20:54:10 1: CUL: Can't open /dev/ttyS1: Input/output error
2020.09.01 20:54:10 1: CUL: Can't open /dev/ttyS2: Input/output error
2020.09.01 20:54:10 1: CUL: Can't open /dev/ttyS3: Input/output error
2020.09.01 20:54:10 1: usb create end
Undefined subroutine &main::trim called at /opt/fhem/FHEM/98_version.pm line 70.
Hilft das so weiter?
Mit Deinen Homematic Basteleien dürfte das ursächlich nichts zu tun haben.
Wo und warum rufst Du denn beim FHEM Start in Deiner Konfiguration den Befehl "version" auf?
Vermutlich ist bei Deinen Neuinstalltionsversuchen etwas schiefgegangen und das perl in Deiner virtuellen Umgebung ist nicht vollständig bzw. nicht korrekt installiert.
Ich sehe es wie betateilchen: klingt nach kaputt. Aber falls es wirklich mal funktioniert hat und die Ursache in Deiner Änderung der config liegen sollte: hast Du ältere configs (also bevor Du die Änderung gespeichert hast) die eventuell funktionieren könnten und noch einen Test wert wären?
ls -lha /opt/fhem/restoreDir/save
Gruß Otto
Zitat von: BTheiss am 01 September 2020, 19:21:10
Um andere Fehler auszuschließen, habe ich die 99_MyUtils.pm umbenannt. Ich bekomme folgenden Fehler zum Schluß angezeigt:
Undefined subroutine &main::trim called at /opt/fhem/FHEM/98_version.pm line 70
Bis du sicher, dass du nicht versehentlich die Datei 99_Utils.pm umbenannt hast? Da ist nämlich eine Funktion "trim()" drin...
Hallo,
vielen Dank für Eure Hilfe. Nach der Info von Otto, habe ich es mit einer SIcherung probiert, aber keinen Erfolg gehabt.
Ich habe dann mit der Minimalkonfiguration angefangen, ein Update über die Installation gezogen und dann aus einer Sicherung nach und nach alle Definitionen übernommen. Es funktioniert jetzt wieder einigermaßen. Aber ich werde wohl noch einige Tage brauchen, bis wieder alles in Ordnung ist und ich eine neue Sicherung ziehen kann.
Nochmals Danke.