Hallo,
ich möchte gern das System unter dem FHEM auf meinem Raspi erneuern. Dazu habe ich auf einer SD das aktuelle System aufgespielt, die von fhem benötigen Pakete
sudo apt-get -f install && sudo apt-get install perl libdevice-serialport-perl libio-socket-ssl-perl libcgi-pm-perl libwww-perl libxml-simple-perl libjson-perl sqlite3 libdbd-sqlite3-perl libtext-diff-perl
eingefügt, das aktuelle FHEM installiert, Zugriffsrechte gesetzt
sudo chmod -R a+w fhem
und den aktuellen Benutzer sowie fhem der Gruppe tty zugefügt, also alles wie gewohnt.
Fhem erscheint beim Aufruf, alles okay.
Sodann habe ich (Ottos Anleitung aus seinem Blog folgend) die vorher gefertigte Backup-Datei nach /home/pi kopiert, FHEM beendet und den Programmpfad wiederhergestellt:
sudo tar -xvzf /home/pi/FHEM-20211103_144021.tar.gz -C /opt/fhem/
Dann FHEM wieder gestartet:
sudo systemctl start fhem
Aufruf im Browser scheitert: Website nicht erreichbar.
Sieht jemand, woran es hapert?
Vielen Dank, Ingo
Sicherheitshalber den Owner von /opt/fhem angepasst?
Ansonsten:
https://wiki.fhem.de/wiki/FHEM_startet_nicht_-_Tipps_zur_Fehlersuche (https://wiki.fhem.de/wiki/FHEM_startet_nicht_-_Tipps_zur_Fehlersuche)
Hallo Werniemann,
nein, das habe ich nicht gemacht. Wie geht das bitte?
LG
?? Sorry aber meinst Du das ernst ??
Gucke mal auf Deinen 2. Befehl ....
Sorry....
Ich verstehe nicht, in welcher Richtung anzupassen ist. Root als Owner, also
chown -R fhem:root /opt/fhem
? Oder pi?
LG
Du must es warscheinloch als root (oder sudo) machen.
Besser ist übrigens:
chown -R fhem: /opt/fhem
dadurch, das hinter dem : nichts steht, wird die Defaultgruppe des Users genommen. Das ist immer empfehlenswerter!
Vielen Dank, hab ich gemacht.
Nein, leider lässt sich FHEM weiterhin nicht aufrufen.
Ich probiere jetzt erst einmal die Tipps aus Deinem Link aus und melde mich dann wieder.
LG
Hi,
der tar Befehl aus #1 stellt normal die Berechtigungen aus der Sicherung wieder her, ein Anpassung ist normal nicht notwendig. Schaden tut es nicht.
Wenn jetzt fhem nicht mehr startet, liegt das meist an nicht installierten Perlmodulen / Abhängigkeiten.
Was steht im Log (https://wiki.fhem.de/wiki/FHEM_startet_nicht_-_Tipps_zur_Fehlersuche#Die_letzen_Zeilen_im_existierenden_FHEM_Log_anzeigen)?
Gruß Otto
P.S: der Befehl sudo chmod -R a+w fhem nach der Installation ist mir nicht klar. Wo hast Du die Idee her? Mit einem relativen Pfad - wo stehts Du beim Aufruf?
Folgendes hab ich noch versucht:
service fhem status
● fhem.service - FHEM Home Automation
Loaded: loaded (/etc/systemd/system/fhem.service; enabled; vendor preset: enabled)
Active: activating (start) since Wed 2021-11-03 16:38:59 CET; 149ms ago
Cntrl PID: 1611 (perl)
Tasks: 1 (limit: 4915)
CGroup: /system.slice/fhem.service
└─1611 /usr/bin/perl fhem.pl fhem.cfg
Nov 03 16:38:59 raspberrypi systemd[1]: Starting FHEM Home Automation...
FHEM überlastet? Befehl "top":
top - 16:43:44 up 9 min, 2 users, load average: 1,00, 0,88, 0,50
Tasks: 134 total, 2 running, 132 sleeping, 0 stopped, 0 zombie
%Cpu(s): 19,6 us, 3,8 sy, 0,0 ni, 76,5 id, 0,0 wa, 0,0 hi, 0,2 si, 0,0 st
MiB Mem : 3838,7 total, 3571,9 free, 86,2 used, 180,7 buff/cache
MiB Swap: 100,0 total, 100,0 free, 0,0 used. 3619,9 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2405 fhem 20 0 42724 34776 4172 R 40,7 0,9 0:01.23 perl
1 root 20 0 33696 8036 6420 S 0,3 0,2 0:06.40 systemd
257 root 20 0 0 0 0 S 0,3 0,0 0:00.23 brcmf_wdog/mmc1
394 message+ 20 0 6716 3412 2908 S 0,3 0,1 0:01.34 dbus-daemon
1832 pi 20 0 10432 2912 2464 R 0,3 0,1 0:01.27 top
Mit der Interpretation tue ich mich schwer, aber nach dem Beispiel aus Deinem Link gibt es eine recht starke Nutzung der CPU durch Fhem von ca. 40 %)
Stimmen die Dateiberechtigungen? ls -la /opt/fhem/
drwxrwxrwx 13 fhem dialout 4096 Nov 3 15:17 .
drwxr-xr-x 5 root root 4096 Nov 3 15:14 ..
-rw-rw-rw- 1 fhem dialout 311 Apr 8 2020 alexa-fhem.cfg
drwxr-xr-x 3 fhem dialout 4096 Feb 12 2021 cache
-rw-rw-rw- 1 fhem dialout 365557 Sep 11 08:52 CHANGED
-rw-rw-rw- 1 fhem dialout 41710 Sep 11 08:52 configDB.pm
drwxrwxrwx 46 fhem dialout 4096 Apr 7 2020 contrib
drwxrwxrwx 3 fhem dialout 4096 Apr 7 2020 demolog
drwxrwxrwx 4 fhem dialout 4096 Apr 7 2020 docs
-rw-rw-rw- 1 fhem dialout 5996 Mai 7 2020 fb_phonebook.xml
drwxrwxrwx 6 fhem dialout 28672 Okt 3 12:41 FHEM
-rw-rw-rw- 1 fhem dialout 170581 Nov 3 12:43 fhem.cfg
-rw-rw-rw- 1 fhem dialout 25544 Jan 26 2020 fhem.cfg.demo
-rwxrwxrwx 1 fhem dialout 169009 Sep 11 08:52 fhem.pl
-rw-r--r-- 1 fhem dialout 18092 Sep 11 08:52 GPL_V2.txt
drwxr-xr-x 3 fhem dialout 4096 Sep 11 08:52 lib
drwxrwxrwx 2 fhem dialout 4096 Nov 2 07:43 log
-rw-rw-rw- 1 fhem dialout 43768 Sep 11 08:52 MAINTAINER.txt
-rw-rw-rw- 1 fhem dialout 935 Jan 26 2020 README_DEMO.txt
drwxrwxrwx 5 fhem dialout 4096 Okt 26 18:52 restoreDir
drwxrwxrwx 2 fhem dialout 114688 Nov 3 13:11 SonosSpeak
drwxrwxrwx 2 fhem dialout 4096 Apr 8 2020 unused
drwxrwxrwx 10 fhem dialout 4096 Okt 3 12:41 www
Scheint zu stimmen, oder?
Letzte Zeilen im Log:
2021.11.03 16:54:52 3: HUEGroup27: I/O device is Hue
2021.11.03 16:54:52 3: FUIP: Registering ui for URL /ui
2021.11.03 16:54:53 2: FRITZBOX FritzBox: Define.254 Modul functionality limited because of missing perl modules: Net::Telnet Soap::Lite
2021.11.03 16:54:53 3: Temperaturen: Defined with URL http://admin:xxx@192.168.178.82/action/deviceListGet and interval 600 featurelevel 6
2021.11.03 16:54:54 1: reload: Error:Modul 00_SONOS deactivated:
Can't locate SOAP/Lite.pm in @INC (you may need to install the SOAP::Lite module) (@INC contains: fhem.p/lib fhem.p/FHEM/lib ./FHEM/lib ./lib ./FHEM ./ /usr/local/FHEM/share/fhem/FHEM/lib . /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) at FHEM/lib/UPnP/Common.pm line 108.
BEGIN failed--compilation aborted at FHEM/lib/UPnP/Common.pm line 108.
Compilation failed in require at FHEM/lib/UPnP/ControlPoint.pm line 39.
BEGIN failed--compilation aborted at FHEM/lib/UPnP/ControlPoint.pm line 39.
Compilation failed in require at ./FHEM/00_SONOS.pm line 194.
BEGIN failed--compilation aborted at ./FHEM/00_SONOS.pm line 194.
2021.11.03 16:54:54 0: Can't locate SOAP/Lite.pm in @INC (you may need to install the SOAP::Lite module) (@INC contains: fhem.p/lib fhem.p/FHEM/lib ./FHEM/lib ./lib ./FHEM ./ /usr/local/FHEM/share/fhem/FHEM/lib . /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) at FHEM/lib/UPnP/Common.pm line 108.
BEGIN failed--compilation aborted at FHEM/lib/UPnP/Common.pm line 108.
Compilation failed in require at FHEM/lib/UPnP/ControlPoint.pm line 39.
BEGIN failed--compilation aborted at FHEM/lib/UPnP/ControlPoint.pm line 39.
Compilation failed in require at ./FHEM/00_SONOS.pm line 194.
BEGIN failed--compilation aborted at ./FHEM/00_SONOS.pm line 194.
Undefined subroutine &main::SONOS_getSonosPlayerByName called at ./FHEM/21_SONOSPLAYER.pm line 242, <$fh> line 1876.
Huh, das gibt es ja reichlich Fehlermeldungen!
Mal so versucht:
sudo apt-get install libjson-perl libwww-perl libsoap-lite-perl libjson-xs-perl
Letzte Zeilen aus dem log:
Jetzt wird das Fehlen eines anderen Paketes bemängelt:
Can't locate XML/Parser/Lite.pm in @INC (you may need to install the XML::Parser::Lite module)
Also:
sudo apt-get install libxml-parser-perl
Letzte 20 Zeilen: Keine Fehlermeldung mehr. Neustart. FHEM weiterhin nicht aufrufbar.
Auslastung des Prozessors:
1572 fhem 20 0 39436 31532 4016 R 36,2 0,8 0:01.09 perl
1 root 20 0 33696 7976 6368 S 0,3 0,2 0:04.65 systemd
123 root 20 0 21336 7448 6540 S 0,3 0,2 0:00.89 systemd-journal
1418 pi 20 0 10404 3052 2532 R 0,3 0,1 0:00.51 top
Auslastung durch FHEM schwankt natürlich, gern auch mal bis 100 %.
Jetzt die Fehlernachrichten von FHEM nach Start analysieren:
cd /opt/fhem
fhem.cfg - Nutzer: perl fhem.pl -d fhem.cfg
Ergebnis:.... 2021.11.03 17:31:25 1: WEB: Can't open server port at 8083: Address already in use. Exiting.
Wieso das denn? Es läuft kein zweites FHEM....
Test: ps aux |grep perl
fhem 2863 63.0 0.8 42656 34684 ? R 17:36 0:01 /usr/bin/perl fhem.pl fhem.cfg
pi 2865 0.0 0.0 7360 528 pts/0 S+ 17:36 0:00 grep --color=auto perl
Hm, hilft mir nicht weiter.
Was blockiert?
Als root netstat -lntp ausgeführt:
Aktive Internetverbindungen (Nur Server)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:8083 0.0.0.0:* LISTEN 3294/perl
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 534/sshd
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 409/cupsd
tcp 0 0 0.0.0.0:8088 0.0.0.0:* LISTEN 3294/perl
tcp 0 0 0.0.0.0:5900 0.0.0.0:* LISTEN 523/vncserver-x11-c
tcp6 0 0 :::22 :::* LISTEN 534/sshd
tcp6 0 0 ::1:631 :::* LISTEN 409/cupsd
tcp6 0 0 :::5900 :::* LISTEN 523/vncserver-x11-c
Ist die Config das Problem? ls -lha /opt/fhem/restoreDir/save:
drwxrwxrwx 5 fhem dialout 4,0K Nov 3 12:43 .
drwxrwxrwx 5 fhem dialout 4,0K Okt 26 18:52 ..
drwxr-xr-x 3 fhem dialout 4,0K Nov 1 17:46 2021-11-01
drwxr-xr-x 3 fhem dialout 4,0K Nov 2 06:54 2021-11-02
drwxr-xr-x 3 fhem dialout 4,0K Nov 3 12:43 2021-11-03
So, jetzt bin ich am Ende ;-(
Falls jemand diesem Thread wirklich bis zum Ende gefolgt ist (Kompliment! ;-) und Rat weiß.... Es wäre zu schön.
LG Ingo
PS: Bei meinen bescheidenen Kenntnissen ist es natürlich gut möglich, dass der Fehler sich aus den obigen Codes ablesen lässt und ich es bloß nicht sehe...
Hi Otto,
sudo chmod -R a+w fhem
habe ich m.E. von hier: https://www.computerhilfen.de/info/schnell-anleitung-fhem-auf-einem-raspberry-pi-installieren.html (https://www.computerhilfen.de/info/schnell-anleitung-fhem-auf-einem-raspberry-pi-installieren.html)
Hat aber bisher funktioniert, ja auch bei dem auf das neue System aufgebrachten "nackten" FHEM.
LG
Steht alles da
functionality limited because of missing perl modules: Net::Telnet Soap::Lite
wenn es ein Debian ist dann einfach
apt-get install libnet-telnet-perl libsoap-lite-perl
Pakete installiert, es bleibt aber leider bei
2021.11.03 18:16:30 1: WEB: Can't open server port at 8083: Address already in use. Exiting.
Sollte ich in der FritzBox etwas tun? Die "alte" Adresse, dh von FHEM vor dem Neuaufsetzen, ist dort fixiert. Fhem kommt jedoch auf dem alten Raspi mit einer neuen Adresse.
Seltsamerweise werden in der FB ZWEI Geräte als aktiv aufgeführt, obwohl nur einer der beiden Raspis am Netz ist..... Keine der beiden Adressen ist erreichbar.
LG
erstell doch mal ein 2. webdevice für einen anderen port und versuche den zugriff darüber.
Entschuldige, Frank, wie geht das von der Konsole aus?
Starte das System neu bitte. Das ganze.
Neustart habe ich gemacht, leider keine Änderung.
Aber mir fällt Folgendes auf:
2021.11.03 18:30:56 5: Cmd: >attr global autoload_undefined_devices 1<
2021.11.03 18:30:56 5: Cmd: >attr global autosave 0<
2021.11.03 18:30:56 5: Cmd: >attr global logfile ./log/fhem-%Y-%m.log<
2021.11.03 18:30:56 5: Cmd: >attr global modpath .<
2021.11.03 18:30:56 5: Loading ./FHEM/99_SUNRISE_EL.pm
2021.11.03 18:30:56 5: Loading ./FHEM/99_Utils.pm
2021.11.03 18:30:56 5: Loading ./FHEM/99_myUtils.pm
2021.11.03 18:30:56 5: Cmd: >attr global motd SecurityCheck:\<
2021.11.03 18:30:56 5: Cmd: >attr global statefile ./log/fhem.save<
2021.11.03 18:30:56 5: Cmd: >attr global verbose 3<
2021.11.03 18:30:56 5: Initializing Type Library:
2021.11.03 18:30:56 1: Including fhem.cfg
2021.11.03 18:30:56 5: Cmd: >attr global userattr alexaName alexaProactiveEvents:1,0 alexaRoom cmdIcon devStateIcon:textField-long devStateStyle genericDeviceType:security,ignore,switch,outlet,light,blind,thermometer,thermostat,contact,garage,window,lock,scene homebridgeMapping:textField-long icon powerMap:textField-long powerMap_interval powerMap_noEnergy:1,0 powerMap_noPower:1,0 powerMap_rname_E:textField powerMap_rname_P:textField sortby webCmd webCmdLabel:textField-long widgetOverride<
2021.11.03 18:30:56 5: Cmd: >attr global autoload_undefined_devices 1<
2021.11.03 18:30:56 5: Cmd: >attr global autosave 0<
2021.11.03 18:30:56 5: Cmd: >attr global logfile ./log/fhem-%Y-%m.log
2021.11.03 18:30:56 5: Cmd: >attr global modpath .<
2021.11.03 18:30:56 5: Cmd: >attr global motd SecurityCheck:
Kann es sein, dass einiges fälschlicherweise doppelt aufgerufen wird?
global autoload_undefined_devices 1<
2021.11.03 18:30:56 5: Cmd: >attr global autosave 0<
2021.11.03 18:30:56 5: Cmd: >attr global logfile ./log/fhem-%Y-%m.log<
2021.11.03 18:30:56 5: Cmd: >attr global modpath .<
2021.11.03 18:30:56 5: Cmd: >attr global motd SecurityCheck
Falls hier ein Fehler liegt, könnte es damit zusammen hängen, dass ja ein FHEM über ein zweites installiert wurde?
Und falls auch das zu bejahen ist: Wie bekommt man das weg via SSH?
LG
Zeig nochmal bitte die Ausgabe von systemctl status fhem
Und installiere FHEM in Zukunft besser nach dieser Anleitung https://wiki.fhem.de/wiki/Raspberry_Pi#Der_einfache_Weg_zum_aktuellen_System
Hallo Otto,
ich hab gerade libxml-parser-lite-perl nachinstalliert (komisch, wurde bisher nicht gebraucht) und - ein WUNDER - FHEM ist plötzlich erreichbar. Im UI fehlen zwar diverse Symbole und die Anrufe von der FB, aber immerhin... Hat sich übrigens die interne IP geändert, vielleicht deshalb (FB).
Hier der Status:
fhem.service - FHEM Home Automation
Loaded: loaded (/etc/systemd/system/fhem.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2021-11-03 19:34:01 CET; 2min 35s ago
Process: 1026 ExecStart=/usr/bin/perl fhem.pl fhem.cfg (code=exited, status=0/SUCCESS)
Main PID: 1028 (perl)
Tasks: 6 (limit: 4915)
CGroup: /system.slice/fhem.service
├─1028 /usr/bin/perl fhem.pl fhem.cfg
└─1041 /usr/bin/perl ./FHEM/00_SONOS.pm 4711 0 0 startedbyfhem
Nov 03 19:34:01 raspberrypi systemd[1]: Starting FHEM Home Automation...
Nov 03 19:34:01 raspberrypi systemd[1]: Started FHEM Home Automation.
Sieht normal aus, oder?
LG
PS:
Zitathttps://wiki.fhem.de/wiki/Raspberry_Pi#Der_einfache_Weg_zum_aktuellen_System
Der Link ist großartig. Vielen Dank!
naja es startet schon mal :)
Ja, bin zufrieden. Herzlichen Dank Dir und allen Mitdenkern!
Wichtig für die Zukunft ist für Dich eine Liste, welche Module Dein FHEM braucht!
Man kann es auch mit dem FHEM Installer zwar irgendwie machen, aber ich habe old Scool eine Liste: https://github.com/heinz-otto/raspberry/blob/master/fhemDeb.txt
Man kann es auch aus der apt Historie herausfieseln: https://heinz-otto.blogspot.com/2019/07/infos-zur-installation-von-modulen-und.html
Ihr seit schnell ...brauche doch nicht gucken ;o)
Ja, das ist sicher richtig, Otto - werde ich machen.
Ergänzend vielleicht noch der Hinweis, dass beim Restore in der Art, wie hier beschrieben, die Termine, der Alexa-Connector und die Echo-Devices nachgearbeitet werden müssen.
LG Ingo
Naja, der backup Befehl von FHEM sichert den FHEM Pfad - normal: /opt/fhem
Alles was dort steht wird gesichert und kann wieder hergestellt werden.
Wo stehen Daten für "die Termine, der Alexa-Connector und die Echo-Devices" ?
Ich hatte mal noch diesen Artikel (https://heinz-otto.blogspot.com/2019/07/neues-linux-system-nacharbeit.html)verfasst. Da geht es noch etwas tiefer ssh, samba ...
Das gehört auch zur ständigen Doku und Pflege des Systems. :) (ich weiß das ist eine schwierige Aufgabe)
Gruß Otto
O Mann, Otto... die Arbeit nimmt ja kein Ende :-[
Und Du hast schon Recht: Dein Artikel geht tiefer...tiefer als ich folgen kann. Vielleicht in einem nächsten Leben 8)
Aber vielleicht packt mich irgendwann mal der Ehrgeiz.
Keine Ahnung, wo der Connector und die Echos ihre Daten ablegen... hab ich bei der Installation einfach laufen lassen. Das jetzt umzuswitchen, bekomme ich sicher nicht unfallfrei hin.
Die Termine liegen bei mir unter pi/home/Downloads. Die in den fhem-Odner zu legen, wäre leicht.
LG
Naja bzgl. echodevice und alexa-fhem:
dazu muss per npm/nodejs was installiert werden, vermutlich auf dem neuen System eben erneut und beim echodevice u.U. neu angemeldet werden (wobei die "Cookie-Dateien" eigentlich mitgesichert werden sollten, die liegen mWn "irgendwo" unter /opt/fhem/... Dachte ich zumindest konnte sie aber nicht finden ;) )...
Zusätzlich sind die ssh-Schlüssel für alexa-fhem unter /opt/fhem/.ssh/ und der .ssh Ordner wird im Backup nicht mitgesichert.
Ich habe den einfach mal so per tar nach /opt/fhem/ gepackt und damit im Backup :)
(und da sind nat. falls genutzt auch weitere ssh-Schlüssel für Verbindungen ohne PW mit anderen Systemen)
Bzgl. Termine: keine Ahnung ;) Kommt halt drauf an was da genutzt wird... Meine Termine, also holiday wird mitgesichert... 8)
Gruß, Joachim
Zitat(wobei die "Cookie-Dateien" eigentlich mitgesichert werden sollten, die liegen mWn "irgendwo" unter /opt/fhem/... Dachte ich zumindest konnte sie aber nicht finden ;) )...
opt/fhem/cache
Zitat von: TomLee am 04 November 2021, 11:08:59
opt/fhem/cache
Hmm, ja hatte ich gesehen aber dort halt im Unterordner "alexa-cookie"...
...da dachte ich dann eher an alexa-fhem... ;)
(oder das ist alexa-fhem und die anderen sind nur temporär dort / egal...)
Gruß, Joachim
Leicht OT, geht ja aber auch ums Verständnis für alle:
Ich sag 37_echodevice, daher damals meine Frage (https://forum.fhem.de/index.php/topic,82631.msg1165317/topicseen.html#msg1165317) auf die keiner antwortete.