Hallo,
ich bin nun schon Tage am Suchen und Probieren, aber finde einfach keine Lösung für das Problem. Ich hoffe Jemand kann mir hier helfen.
Ausgangssituation:Ich habe eine nicht ganz kleine FHEM-Installation in Betrieb (mit über 100 Sensoren/Aktoren). Das Ganze läuft relativ problemlos seit über 2 Jahren mit Stretch auf einem RasPi 3+. So langsam kommt der RasPi 3+ allerdings an seine Grenzen. FHEM erzeugt inzwischen oft nahezu 100% CPU-Last. Deshalb habe ich entschieden auf einen RasPi 4+ umzusteigen. Parallel zu FHEM läuft darauf auch noch eine pivccu3 für die Homematic-Komponenten.
Dazu habe ich folgendes gemacht:
- Datensicherung der SD-Karte auf mein NAS-Laufwerk
- Mit WIN32-Diskmanager eine Kopie der SD-Karte erzeugt und in einen anderen RasPi 3+ gesteckt
- Update/Upgrade von Stretch durchgeführt
- Update/Upgrade auf Buster durchgeführt
- Boot-Partition gesichert
- Partitionen angepaßt (Root verschoben, Boot auf 256MB vergrößert)
- Boot-Partition zurück geschrieben
- Per Reinstall das neueste/richtige Kernel installiert
- Die SD-Karte in den RasPi 4+ gesteckt und gebootet
==> funktioniert soweit.
Ich habe mich wegen der verschiedensten Installationen auf dem RasPi (die ich mit Sicherheit nicht mehr alle weiß) bewußt gegen eine reine Neuinstallation entschieden. Soweit hat das ja auch geklappt. Jetzt komme ich aber mit dem letzten Schritt nicht mehr weiter und hoffe auf Eure Hilfe.
Das Problem:Nachdem der Pi gebootet hat kann ich per TOP sehen, daß FHEM offensichtlich läuft. Die Statusabfrage sieht auch gut aus.
pi@raspberrypi:~$ service fhem status
● fhem.service - FHEM Home Automation
Loaded: loaded (/etc/systemd/system/fhem.service; enabled; vendor preset: ena
Active: active (running) since Mon 2021-02-08 20:07:52 CET; 2s ago
Process: 922 ExecStart=/usr/bin/perl fhem.pl fhem.cfg (code=exited, status=0/S
Main PID: 923 (perl)
Tasks: 1 (limit: 4915)
CGroup: /system.slice/fhem.service
└─923 /usr/bin/perl fhem.pl fhem.cfg
Feb 08 20:07:52 raspberrypi systemd[1]: Starting FHEM Home Automation...
Feb 08 20:07:52 raspberrypi systemd[1]: Started FHEM Home Automation.
lines 1-11/11 (END)
Die richtige IP-Adresse kenne ich auch und den Port habe ich auf 8084 geändert um nicht mit meinem "Produktivsystem" (dem alten RasPi 3+) ins Gehege zu kommen. Ich kann aber über den Browser vom PC aus FHEM-WEB nicht erreichen. Ich bekomme immer nur die Meldung:
Die Website ist nicht erreichbar192.168.178.238 hat die Verbindung abgelehnt.So, jetzt hoffe ich mal auf ein paar gute Ideen von Euch zu meinem Problem.
Hi,
Tipp: https://wiki.fhem.de/wiki/FHEM_startet_nicht_-_Tipps_zur_Fehlersuche#Die_letzen_Zeilen_im_existierenden_FHEM_Log_anzeigen
Die Sache mit den unterschiedlichen Ports verstehe ich nicht, bei Pis haben doch eine unterschiedliche IP? Oder ist genau das das Problem? Laufen beide PIs und haben eine unterschiedliche IP?
Wann und wie hast Du den Port geändert? War denn das WEB nach dem Umzug schon mal erreichbar?
Abgelehnt klingt nach nicht berechtigt: Stichwort allowed?
Gruß Otto
Oder der Port vom FHEMWEB ist der gleiche wie der Port der pivccu3 / Homematic?
Tippe auf selbe IP Adresse für beide Systeme.
Hallo,
ZitatDie Sache mit den unterschiedlichen Ports verstehe ich nicht, bei Pis haben doch eine unterschiedliche IP?
Ich bin kein Netzwerk-Spezialist. Ich dachte ein Port ist unabhängig von der IP-Adresse. Deshalb habe ich dem neuen Pi/FHEM einen anderen Port zugewiesen, aber erst nachdem es mit dem Original-Port nicht funktioniert hatte.
ZitatLaufen beide PIs und haben eine unterschiedliche IP?
Ja, das "Produktivsystem" ist ja noch im Einsatz bis der Neue funktioniert. Und natürlich haben beide unterschiedliche Adressen (PI 3+ hat die ...130:8083, PI 4+ hat die ...238:8084)
ZitatWann und wie hast Du den Port geändert?
Den Port habe ich geändert nachdem das einfache tauschen der PI's nach dem Upgrade auf Buster nicht funktioniert hat. Geändert hab ich den Port in der fhem.cfg
define WEB FHEMWEB 8084 global
ZitatWar denn das WEB nach dem Umzug schon mal erreichbar?
Nein.
ZitatAbgelehnt klingt nach nicht berechtigt: Stichwort allowed?
Ja, das kam mir auch schon komisch vor, aber ich konnte mir da keinen Reim drauf machen da die Inhalte beider Systeme eigentlich identisch sein müßten (außer natürlich dem Upgrade auf Buster).
ZitatOder der Port vom FHEMWEB ist der gleiche wie der Port der pivccu3 / Homematic?
Benötigt die pivccu auch einen Port und wenn ja welchen? Da habe ich nicht drüber nachgedacht.
Popcorn?
Moin,
und was steht im Log?
Gruß Otto
Guten Morgen Otto,
Das LogFile ist riesengroß. Ich hatte verbose auf 5 stehen und die Datei ist innerhalb von 3 Tagen schon auf 1 GB angeschwollen. Der Pi hat ja noch keine Peripherie und FHEM findet deshalb natürlich auch keine Devices (z.B. kein MQTT, keinen JeeLink, keinen USB-Stick, etc.). Das gibt ein paar Fehlermeldungen, aber daran sollte es ja nicht liegen.
Nach was soll ich denn suchen?
Läuft denn Überhaupt FHEM?
ps aux | grep fhem
Und bitte, Ausgabe posten!
Otto hatte doch einen Link zum Abarbeiten gepostet, hast Du den denn schon abgearbeitet?
Eine Kleinigkeit ist mir noch aufgefallen im Zusammenhang mit der Meldung vom Browser "Die Website ist nicht erreichbar 192.168.178.238 hat die Verbindung abgelehnt".
Ich hatte bei meinem FHEM HTTPS aktiviert. Das habe ich jetzt mal deaktiviert.
Aber auf das WEB-IF von FHEM komme ich trotzdem nicht.
Jetzt meldet der Browser: "Die Website ist nicht erreichbar Verbindung wurde zurückgesetzt".
pi@raspberrypi:~$ ps aux | grep fhem
fhem 27536 22.0 0.2 27216 19708 ? S 11:58 0:00 /usr/bin/perl fhem.pl fhem.cfg
pi 27538 0.0 0.0 7348 528 pts/0 S+ 11:58 0:00 grep fhem
ZitatOtto hatte doch einen Link zum Abarbeiten gepostet, hast Du den denn schon abgearbeitet?
Das hab ich mir angeschaut, aber das hat mir auch keine Erkenntnisse gebracht. Nach meiner Ansicht läuft FHEM ja, nur auf das WEB-IF komme ich nicht. Oder bin ich komplett auf dem Holzweg?
Wenn ich das richtig sehe, startet fhem in einer Endlosschleife, deswegen kommst Du nicht drauf.
Zitat11:58 0:00 /usr/bin/perl fhem.pl fhem.cfg
mMn läuft es 0 sec ;)
es wäre also interessant die letzen Zeilen im Log vor dem Neustart zu sehen. Wie das geht stand in meinem Link. Ich würde ansonsten fhem ordentlich beenden
sudo systemctl stop fhem
in dem Zustand verbrauch es nur unnütz Strom.
Starte es dann dann am Besten per Hand einmal (nicht mit systemctl!) damit Du ordentliche Log Einträge hast, es wird sich ja gleich wieder beenden.
Du kannst auch in dem debug Modus starten - aber das hat Dir ja alles nichts gebracht :)
Hallo Otto,
das mit der Endlosschleife scheint zu stimmen. Das sind so ca. 5s pro Start:
DVES_42E15C:Systen/Interfaces/Bridge/tele/INFO2:.* { json2nameValue($EVENT) }
DVES_42E15C:Systen/Interfaces/Bridge/tele/INFO3:.* { json2nameValue($EVENT) }
DVES_42E15C:Systen/Interfaces/Bridge/tele/STATE:.* { json2nameValue($EVENT) }
DVES_42E15C:Systen/Interfaces/Bridge/tele/UPTIME:.* { json2nameValue($EVENT) }
DVES_42E15C:Systen/Interfaces/Bridge/tele/RESULT:.* { json2nameValue($EVENT) }<
2021.02.09 11:39:47.096 5: Cmd: >attr MQTT2_Sonoff_42E15C room Empfänger/Sender<
2021.02.09 11:39:47.097 5: Cmd: >define FileLog_MQTT2_Sonoff_42E15C FileLog %L/MQTT2_Sonoff_42E15C-%Y-%m.log MQTT2_Sonoff_42E15C<
2021.02.09 11:39:47.098 5: Cmd: >setuuid FileLog_MQTT2_Sonoff_42E15C 5c45be1a-f33f-5ae2-f45e-499aa3d766fed535<
2021.02.09 11:39:47.098 5: Cmd: >attr FileLog_MQTT2_Sonoff_42E15C alias IoT-Bridge-RF433-01<
2021.02.09 11:39:47.098 5: Cmd: >attr FileLog_MQTT2_Sonoff_42E15C logtype text<
2021.02.09 11:39:47.098 5: Cmd: >attr FileLog_MQTT2_Sonoff_42E15C room Logs<
2021.02.09 11:39:47.099 5: Cmd: >define BridgeSonoff TASMOTA_DEVICE Bridge Systen/Interfaces/%prefix%/%topic%/<
2021.02.09 11:39:47.099 5: Loading ./FHEM/10_TASMOTA_DEVICE.pm
2021.02.09 11:39:47.124 1: PERL WARNING: TASMOTA::DEVICE::Expand() called too early to check prototype at ./FHEM/10_TASMOTA_DEVICE.pm line 283.
2021.02.09 11:39:47.124 1: PERL WARNING: TASMOTA::DEVICE::Expand() called too early to check prototype at ./FHEM/10_TASMOTA_DEVICE.pm line 289.
2021.02.09 11:39:47.126 5: Loading ./FHEM/00_MQTT.pm
2021.02.09 11:39:47.129 1: reload: Error:Modul 00_MQTT deactivated:
Can't locate Module/Pluggable.pm in @INC (you may need to install the Module::Pluggable module) (@INC contains: ./lib ./FHEM . /etc/perl /usr/local/lib/arm-linux-gnueabihf/perl/5.28.1 /usr/local/share/perl/5.28.1 /usr/lib/arm-linux-gnueabihf/perl5/5.28 /usr/share/perl5 /usr/lib/arm-linux-gnueabihf/perl/5.28 /usr/share/perl/5.28 /usr/local/lib/site_perl /usr/lib/arm-linux-gnueabihf/perl-base ./FHEM/lib) at FHEM/lib/Net/MQTT/Message.pm line 9.
BEGIN failed--compilation aborted at FHEM/lib/Net/MQTT/Message.pm line 9.
Compilation failed in require at ./FHEM/00_MQTT.pm line 80.
BEGIN failed--compilation aborted at ./FHEM/00_MQTT.pm line 80.
2021.02.09 11:39:47.129 0: Can't locate Module/Pluggable.pm in @INC (you may need to install the Module::Pluggable module) (@INC contains: ./lib ./FHEM . /etc/perl /usr/local/lib/arm-linux-gnueabihf/perl/5.28.1 /usr/local/share/perl/5.28.1 /usr/lib/arm-linux-gnueabihf/perl5/5.28 /usr/share/perl5 /usr/lib/arm-linux-gnueabihf/perl/5.28 /usr/share/perl/5.28 /usr/local/lib/site_perl /usr/lib/arm-linux-gnueabihf/perl-base ./FHEM/lib) at FHEM/lib/Net/MQTT/Message.pm line 9.
BEGIN failed--compilation aborted at FHEM/lib/Net/MQTT/Message.pm line 9.
Compilation failed in require at ./FHEM/00_MQTT.pm line 80.
BEGIN failed--compilation aborted at ./FHEM/00_MQTT.pm line 80.
2021.02.09 11:39:47.129 5: Loading ./FHEM/10_MQTT_DEVICE.pm
2021.02.09 11:39:47.131 1: PERL WARNING: "all" is not defined in %MQTT::EXPORT_TAGS at ./FHEM/10_MQTT_DEVICE.pm line 88.
2021.02.09 11:39:47.131 1: reload: Error:Modul 10_MQTT_DEVICE deactivated:
Can't continue after import errors at ./FHEM/10_MQTT_DEVICE.pm line 74.
BEGIN failed--compilation aborted at ./FHEM/10_MQTT_DEVICE.pm line 88.
2021.02.09 11:39:47.131 0: Can't continue after import errors at ./FHEM/10_MQTT_DEVICE.pm line 74.
BEGIN failed--compilation aborted at ./FHEM/10_MQTT_DEVICE.pm line 88.
Undefined subroutine &MQTT::Client_Define called at ./FHEM/10_TASMOTA_DEVICE.pm line 127.
2021.02.09 11:39:47 3: [UtilsHourCounter] Init Done with Version 1.0.1.0 - 10.12.2014 (john)
Das sind mal einige Zeilen vor dem letzten Start. Vielleicht kannst Du da was draus erkennen.
Was meinst Du mit von Hand starten?
Im Normalfall startet FHEM ja automatisch mit dem Start des Pi oder ich starte/stoppe es per systemctl.
Can't locate Module/Pluggable.pm
Musst Du nachinstallieren
libmodule-pluggable-perl
Wozu ist das denn? Ist das was Pi 4 spezifisches oder durch update/upgrade verloren gegangen. Die SD-Karte vor dem Upgrade auf Buster war ja ein Image meiner laufenden Installation auf dem Pi 3. Wieso fehlt das denn dann auf einmal?
Ich werde mal versuchen das zu installieren. Mal schauen was dabei herauskommt.
Zitat von: Guzzi-Charlie am 09 Februar 2021, 12:57:30
Was meinst Du mit von Hand starten?
Ist das wirklich in dem Wiki Artikel so unklar beschrieben? Ich denke Du hast den abgearbeitet?
cd /opt/fhem
sudo perl fhem.pl fhem.cfg
oder debug Modus
cd /opt/fhem
perl fhem.pl -d fhem.cfg
ZitatDie SD-Karte vor dem Upgrade auf Buster war ja ein Image meiner laufenden Installation auf dem Pi 3. Wieso fehlt das denn dann auf einmal?
Das ist aber genau so ein Problem was bei einem solchen Update auftreten kann. Ist nur ne Mutmaßung, aber es ändern sich eben auch von Version zu Version die Module. Es gibt keinen Königsweg, aber dein Weg ist eben auch nicht zur Nachahmung empfohlen.
Meine Empfehlung
Doku machen.
Backup machen
Neues System nach Doku installieren
FHEM installieren
restore machen
Hallo Otto und CoolTux,
Nein, unklar beschrieben ist es nicht. Ich hatte diesen Punkt nur nicht ausgeführt weil ich ja ursprünglich dachte FHEM würde laufen und nicht nur versuchen zu starten.
Aber ich hoffe es hat sich jetzt alles erledigt. Ich habe gerade das fehlende Modul nachinstalliert und siehe da, es funktioniert. Ich komme auf das WEB-IF und alles ist vorhanden. Jetzt muß ich nur noch die config in FHEM und die IP-Adresse im Router anpassen und dann hoffe ich mal das die komplette Installation auf dem RasPi 4 unter Buster läuft. Hoffentlich natürlich auch meine virtuelle CCU3 für den Homematic-Teil.
ZitatDoku machen.
Ja, werde ich ab jetzt machen. Wie das halt immer so ist. Man probiert, bastelt und installiert und freut sich das es funktioniert, aber an die Doku denkt man nicht. Ich weiß, daß immer wieder gesagt wird "NEU installieren". Das ist das Gleiche was auch immer bei Windows gesagt wird "Neu machen". Ich bin aber ein absoluter Gegner solcher "Immer alles platt machen Lösungen". Es muß (und tut es ja auch) auch anders gehen. Klar gibt es da manchmal "Haken und Ösen", aber es geht. Mein Windows-PC ist übrigens auch noch NIE neu installiert worden (seit bestimmt 5 Jahren). Aber gut, diese Diskussion möchte ich jetzt hier nicht anfangen.
Auf jeden Fall möchte ich mich schon mal für die Unterstützung bedanken. Ich melde mich nochmal wenn Alles umgebaut ist und funktioniert.
Siehe Doku zu Updates:
Beim Upgrade von Debian wird auch aufgeräumt.
Aber noch etwas:
Hättest Du uns am Anfang mehr Infos gegeben, z.B: das Du den Leitpfad durchgearbeitet hast und eventuelle Ausgaben, währen wir sogar schneller auf das Problem gekommen. So war es etwas "stochern im Nebel" ....
Das Problem war ja, daß ich selbst erstmal im Nebel gestochert hatte, aber hey wie viel scheller als "unter einem Tag" soll es denn gehen. Ist doch Alles super. Danke nochmal.