FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: fhemfatale am 07 Februar 2025, 18:10:51

Titel: [gelöst] Device verschwunden - wie wieder herstellen?
Beitrag von: fhemfatale am 07 Februar 2025, 18:10:51
Hallo,
bei mir ist seit einigen Tagen das Device vitoconnect verschwunden. Update und shutdown+restart habe ich schon ausgeführt. Im Log finde ich diesen Fehler:
reload: Error:Modul 98_vitoconnect deactivated:
 Can't locate JSON/XS.pm in @INC (you may need to install the JSON::XS 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/98_vitoconnect.pm line 79, <$fh> line 217.
BEGIN failed--compilation aborted at ./FHEM/98_vitoconnect.pm line 79, <$fh> line 217.
In der fhem.cfg wird das Device aufgeführt.
Soll ich einfach die Zeilen von dort kopieren und es neu anlegen oder gibt es was elegantes?
Titel: Aw: Device verschwunden - wie wieder herstellen?
Beitrag von: DS_Starter am 07 Februar 2025, 18:19:31
Im FHEM erstmal gar nichts tun.
Auf BS-Ebene das Perl Modul installieren

sudo apt-get install libjson-xs-perl

Danach FHEM einfach restarten. Wenn alles geklappt hat, sollte dein Device wieder da sein.
Ansonsten weitere Maßnahmen.
Titel: Aw: Device verschwunden - wie wieder herstellen?
Beitrag von: fhemfatale am 08 Februar 2025, 15:26:00
Da ich noch ein altes BS auf dem Raspi hatte, was die Installation blockierte, hab ich das BS Raspios neu installiert und den /opt/fhem Ordner zurückgespielt. Leider ist das Problem damit nicht behoben.

sudo apt-get install libjson-xs-perl
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
libjson-xs-perl is already the newest version (4.030-2+b1).
libjson-xs-perl set to manually installed.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Alle möglichen Updates für BS und fhem hatte ich natürlich gemacht.
Titel: Aw: Device verschwunden - wie wieder herstellen?
Beitrag von: DS_Starter am 08 Februar 2025, 16:29:57
Installiere sicherheitshalber noch
sudo apt-get install libjson-perl
FHEM/Rechner rebootet?
Titel: Aw: Device verschwunden - wie wieder herstellen?
Beitrag von: fhemfatale am 08 Februar 2025, 16:56:54
Das bringt das gleiche Ergebnis wie oben. Einen Reboot hatte ich schon mehrmals gemacht.
sudo apt-get install libjson-perl
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
libjson-perl is already the newest version (4.10000-1).
libjson-perl set to manually installed.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Nach der Neuinstallation sieht das Log jetzt so aus. Ähnlicher Fehler ist auch beim DWD Wettermodul.
1: reload: Error:Modul 98_vitoconnect deactivated:
 Can't locate Path/Tiny.pm in @INC (you may need to install the Path::Tiny module) (@INC contains: ./lib ./FHEM . /etc/perl /usr/local/lib/arm-linux-gnueabihf/perl/5.36.0 /usr/local/share/perl/5.36.0 /usr/lib/arm-linux-gnueabihf/perl5/5.36 /usr/share/perl5 /usr/lib/arm-linux-gnueabihf/perl-base /usr/lib/arm-linux-gnueabihf/perl/5.36 /usr/share/perl/5.36 /usr/local/lib/site_perl ./FHEM/lib) at ./FHEM/98_vitoconnect.pm line 83, <$fh> line 217.
BEGIN failed--compilation aborted at ./FHEM/98_vitoconnect.pm line 83, <$fh> line 217.
1: reload: Error:Modul 99_DWD_OpenData_Weblink deactivated:
 Can't locate DateTime.pm in @INC (you may need to install the DateTime module) (@INC contains: ./lib ./FHEM . /etc/perl /usr/local/lib/arm-linux-gnueabihf/perl/5.36.0 /usr/local/share/perl/5.36.0 /usr/lib/arm-linux-gnueabihf/perl5/5.36 /usr/share/perl5 /usr/lib/arm-linux-gnueabihf/perl-base /usr/lib/arm-linux-gnueabihf/perl/5.36 /usr/share/perl/5.36 /usr/local/lib/site_perl) at ./FHEM/99_DWD_OpenData_Weblink.pm line 46, <$fh> line 8.
BEGIN failed--compilation aborted at ./FHEM/99_DWD_OpenData_Weblink.pm line 46, <$fh> line 8.
Titel: Aw: Device verschwunden - wie wieder herstellen?
Beitrag von: DS_Starter am 08 Februar 2025, 17:03:41
Ja schau mal, das ist ja jetzt ein anderes Perl Modul -> Path/Tiny.pm

Da fehlen bei dir wohl einige. Musst du nachinstallieren, diese mit:

sudo apt-get install libpath-tiny-perl

Möglicherweise fehlen dir noch mehrere. Musst du schauen was genau als Fehler evtl. noch folgt.
Titel: Aw: Device verschwunden - wie wieder herstellen?
Beitrag von: Otto123 am 08 Februar 2025, 17:06:39
Zitat von: fhemfatale am 08 Februar 2025, 16:56:54Ähnlicher Fehler ist auch beim DWD Wettermodul.
Du hast einfach "vergessen" alle Vorrausetzungen für DEIN FHEM zu installieren. Wenn Du nicht weißt, was Du installieren musst, kannst Du jetzt nur immer wieder das Log lesen und die fehlenden Module nachinstallieren.

Hier steht eventuell etwas hilfreiches für Dich: https://heinz-otto.blogspot.com/2019/07/infos-zur-installation-von-modulen-und.html
Du kannst entweder im alten System nachschauen, oder die debian Pakete anhand der Modulnamen ermitteln. Installiere bitte nicht unbedingt per cpan ...
Titel: Aw: Device verschwunden - wie wieder herstellen?
Beitrag von: DS_Starter am 08 Februar 2025, 17:10:51
Hallo Otto,

noch ein Grund den FHEM Installer auf Vordermann zu bringen.  ;)
Würde sehr helfen.

LG
Titel: Aw: Device verschwunden - wie wieder herstellen?
Beitrag von: fhemfatale am 08 Februar 2025, 17:31:22
Wie stell ich das mit dem locale richtig ein?
apt-listchanges: Can't set locale; make sure $LC_* and $LANG are correct!
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = (unset),
LC_TIME = "de_DE.UTF-8",
LC_MONETARY = "de_DE.UTF-8",
LC_ADDRESS = "de_DE.UTF-8",
LC_TELEPHONE = "de_DE.UTF-8",
LC_NAME = "de_DE.UTF-8",
LC_MEASUREMENT = "de_DE.UTF-8",
LC_IDENTIFICATION = "de_DE.UTF-8",
LC_NUMERIC = "de_DE.UTF-8",
LC_PAPER = "de_DE.UTF-8",
LANG = "en_GB.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to a fallback locale ("en_GB.UTF-8").
locale: Cannot set LC_ALL to default locale: No such file or directory
Selecting previously unselected package libpath-tiny-perl.
(Reading database ... 96388 files and directories currently installed.)
Preparing to unpack .../libpath-tiny-perl_0.144-1_all.deb ...
Unpacking libpath-tiny-perl (0.144-1) ...
Selecting previously unselected package libunicode-utf8-perl.
Preparing to unpack .../libunicode-utf8-perl_0.62-2_armhf.deb ...
Unpacking libunicode-utf8-perl (0.62-2) ...
Setting up libunicode-utf8-perl (0.62-2) ...
Setting up libpath-tiny-perl (0.144-1) ...
Processing triggers for man-db (2.11.2-2) ...
Titel: Aw: Device verschwunden - wie wieder herstellen?
Beitrag von: DS_Starter am 08 Februar 2025, 17:37:42
Gerade gegoogelt ....

ZitatFor anybody interested, the solution was just to install sudo apt install locales-all, then re-run locale-gen and relog-in. Now it appears no more errors regarding the locales settings.

Quelle: https://forum.radxa.com/t/apt-listchanges-cant-set-locale-make-sure-lc-and-lang-are-correct/25206
Titel: Aw: Device verschwunden - wie wieder herstellen?
Beitrag von: fhemfatale am 08 Februar 2025, 20:25:17
@DS_Starter:
Der verlinkte Artikel schien genau mein Problem zu lösen. Aber bei mir hat es bisher nicht funktioniert.

@Otto:
Die Analysen in deinem Blog haben mich noch nicht weitergebracht.

Morgen geht's weiter mit der Suche.
Titel: Aw: Device verschwunden - wie wieder herstellen?
Beitrag von: fhemfatale am 12 Februar 2025, 17:39:32
Ich hatte zwischenzeitlich ein cspan -u eingegegeben. Das brauchte dann Stunden bis es durch war. Vielleicht stoppte es auch wegen meinem täglichen cronjob zum Neustart.
Im Log scheint der Fehler mit vitoconnect nicht mehr zu kommen. Der letzte Eintrag ist vom 08.02.2025.
Aber das Device und die zugehörigen Daten sind nicht sichtbar.
Was kann ich noch untersuchen oder unternehmen, damit das Device wieder angezeigt wird?

PS: der Fehler im DWD Modul ließ sich durch Nachinstallieren von libdatetime-perl beseitigen.
Titel: Aw: Device verschwunden - wie wieder herstellen?
Beitrag von: DS_Starter am 12 Februar 2025, 19:06:00
ZitatWas kann ich noch untersuchen oder unternehmen, damit das Device wieder angezeigt wird?
Sofern nun alle notwendigen Perl-Module nachinstalliert wurden und die Definition des Devices in der Zwischenzeit aus der fhem.cfg abhanden gekommen ist, hast du im Prinzip diese Möglichkeiten:

- du hast eine Sicherung der fhem.cfg (sollte man immer haben!) und stellst diese komplett her und startest damit, oder
- du hast eine Sicherung der fhem.cfg, suchst dort den Teil mit der Definition des vitoconnect-Devices und
  definierst mit diesen Angaben dein Device im FHEM manuell neu (einfach abschreiben), oder
- definierst das Device neu


 
Titel: Aw: Device verschwunden - wie wieder herstellen?
Beitrag von: fhemfatale am 12 Februar 2025, 21:00:28
Vielen Dank für die Tipps. Mit dem zweiten Vorschlag hat es geklappt.
Ich hatte auch schon mit dem Gedanken gespielt, mir fehlte aber noch der Schubs.