Anscheinend Gelöst:Fehlermeldungen nach FHEM-Absturz

Begonnen von rasti, 04 Mai 2016, 23:09:03

Vorheriges Thema - Nächstes Thema

rasti

Hallo,

Ich habe mir leider mit einem Perlprogrammierversuch FHEM "abgeschossen".
https://forum.fhem.de/index.php/topic,52054.15.html

Da FHEM nicht mehr reagiert hat und das absturzverursachende Userreading
ja in der fhem.cfg drin war habe ich per FTP die fhem.cfg wieder auf alten Stand gebracht,
mich per putty auf dem fhem-raspi eingeloggt und sudo reboot durchgeführt.

Also bitte nicht prügeln, dass ich die fhem.cfg manuell geändert und per FTP eingeladen habe.  :-\

Im Prinzip läuft FHEM, ich kann anscheinend noch alles schalten,
automatische Rolloschaltzeiten gehen, TV ist steuerbar, Anrufliste da, 1wire funzt
FS20 geht, usw usw und auch die logs werden weiter gefüllt. Tablet UI geht auch.

Aber:
1. in der Standard FHEM UI fehlen bei einigen Devices die Icons

2. Im Log-File stehen komische Meldungen
2016.05.04 22:23:49 1: PERL WARNING: Argument "Bad" isn't numeric in subtraction (-) at ./FHEM/92_FileLog.pm line 678, <GEN2232> line 34.
2016.05.04 22:23:50 1: PERL WARNING: Argument "Bad" isn't numeric in subtraction (-) at ./FHEM/92_FileLog.pm line 678.
2016.05.04 22:27:43 1: PERL WARNING: Argument "0%" isn't numeric in subtraction (-) at ./FHEM/98_SVG.pm line 1256.
2016.05.04 22:27:43 1: PERL WARNING: Argument "100%" isn't numeric in subtraction (-) at ./FHEM/98_SVG.pm line 1256.

oder
2016.05.04 22:38:45 3: _____TV_Wohnzimmer: unknown attribute webCmd. Type 'attr _____TV_Wohnzimmer ?' for a detailed list.

3. Wenn ich in der FHEM-Konsole die fhem.cfg aufmachen und gleich den "save fhem.cfg" Button klicke, dann werden die Änderungen zwar übernommen, aber es kommt die Meldung:

ERROR:
0 _____Webradio: unknown attribute devStateIcon. Type 'attr _____Webradio ?' for a detailed list. _____Webradio: unknown attribute icon. Type 'attr _____Webradio ?' for a detailed list. HM_2E5CE0: unknown attribute webCmd. Type 'attr HM_2E5CE0 ?' for a detailed list. HM_220A2E: unknown attribute webCmd. Type 'attr HM_220A2E ?' for a detailed list. HM_3CFD66: unknown attribute webCmd. Type 'attr HM_3CFD66 ?' for a detailed list. HM_309E63: unknown attribute webCmd. Type 'attr HM_309E63 ?' for a detailed list.


Was ist da nun kaputt und wie krieg ich das wieder hingebogen ??   :-[

Gruss

Ralf






rasti

Also,

Problem gelöst
Gefehlt hat in der fhem.cfg aus irgendwelchen Gründen die Zeile
attr global userattr cmdIcon devStateIcon devStateStyle icon sortby webCmd widgetOverride
Dann schien alles wieder zu gehen , Icons wieder da etc.
nun tauchte nur noch eine Fehlermeldung auf
2016.05.05 12:04:30 1: configfile: Unknown command attr, try help.
0

fhem.cfg in der FHEM-Konsole öffnen und gleich speichern führte wieder zu den ganzen vorgenannten Fehlermeldungen.
Habe dann mal ein einzelnes Attribut über die Konsole geändert und mit "save ?"  gespeichert und siehe da - alles wieder gut.

Verstehen tus ich zwar nicht, aber es geht ja zum Glück wieder 8)

Wernieman

Auch wenn es geht:
Womit hast Du die Datei denn "repariert"?

Ich glaube, Dein Problem war ein "Windows-Zeilenumbruch".

P.S. für die Zukunft:
Es gibt für Unix (Linux) das Programm dos2unix. Es behandelt genau solche Zeilenumbrüche und "korrigiert" sie
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

rasti

Zitat von: Wernieman am 05 Mai 2016, 12:32:12
Auch wenn es geht:
Womit hast Du die Datei denn "repariert"?

Mit einem ganz normalen Windows-Text-Editor ....

Gruss

Ralf


Wernieman

ZitatMit einem ganz normalen Windows-Text-Editor ....

Bingo ...

Ich an Deiner Stelle würde sicherheitshalber mit dos2unix nochmals über die fhem.cfg "rübergehen" ...
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

ernst1024

fhem ist da tolerant was den Zeilenumbruch angeht, da hatte ich noch nie Probleme und ich editiere fhem.cfg fast ausschließlich von Hand. Anders mal bei einem shell script. Da ist die Ausführung am falschen Zeilenumbruch gescheitert. Gut, seitdem weiß ich das ich meinem Editor sagen kann ob er <cr>+<lf> oder nur <lf> verwenden soll :-)
Gruß Ernst