Fehlermeldungen beim Start von fhem

Begonnen von Gunther, 08 Juni 2014, 12:10:06

Vorheriges Thema - Nächstes Thema

Gunther

So:

pi@raspberrypi /opt/fhem $ ls -l
insgesamt 388
-rwxrwxrwx  1 fhem root      6081 Apr  6 22:46 99_VCONTROL.cfg
drwxrwxrwx  2 fhem dialout   4096 Jun  1 13:45 backup
-rwxrwxrwx  1 fhem dialout  71317 Jun  1 13:56 CHANGED
-rw-rw-rw-  1 fhem dialout  28815 Jun  1 13:56 configDB.pm
drwxrwxrwx 25 fhem root     12288 Apr 30  2013 contrib
drwxrwxrwx  4 fhem root      4096 Mai 12 19:37 docs
drwxrwxrwx  4 fhem root     20480 Jun  1 13:56 FHEM
-rwxrwxrwx  1 fhem root     76425 Jun  8 22:03 fhem.cfg
-rwxrwxrwx  1 fhem root    100298 Jun  1 13:56 fhem.pl
drwxrwxrwx  2 fhem root      4096 Aug 21  2013 firmware
drwxrwxrwx  2 fhem root     12288 Jun  8 11:36 log
-rw-r--r--  1 pi   pi       30293 Jun  8 18:11 myRegConfig.cfg
drwxrwxrwx  3 fhem root      4096 M?r  5 20:46 raspberrypi_cp210x_driver
drwxrwxrwx  2 fhem dialout   4096 Jun  6  2013 unused
drwxrwxrwx  9 fhem root      4096 Mai 12 19:37 www


Komisch dabei: Habe gestern über das Modul hm die COnfig gespeichert (Weboberfläche von fhem; myRegConfig.cfg). Sollte diese Datei nicht auch vom User fhem sein?

In anderen Ordnern ist es auch gemischt zwischen pi und fhem (dialout oder root).

Wer das war? Im Zweifelsfall war ich das. Aber wodurch ist mir gerade nicht klar. Wie gesagt, habe ich mal Berechtigungen angepasst, da ich sonst nicht hätte updaten können.
FHEM@Proxmox@Nuc: TabletUI als User-Interface (4 Wandtablets) / IOs per ser2net gekapselt
Homematic: Heizung, Fenster, Bewegung | Jeelink: Temperatur | Z-Wave: Bewegung, Temperatur | FS20: Temperatur, Fenster | Viessmann-Heizung eingebunden

hexenmeister

Kann es sein, dass du fhem auch mal per Hand gestartet hast?  Dann liefe es unter dem pi User, was die Sache erklären würde. Denn wenn es dann wieder automatisch gestartet wird, Kann es dir Dateien nicht mehr lesen.
Ich würde Starscript so anpassen, dass fhem immer mit seinem eigenen User gestartet wird.

Gunther

Eigentlich sollte FHEM auch alleine starten. Manchmal tut es das nicht. Ich muss dann USB-Devices (über USB-Hub mit eigenem Netzteil versorgt) abklemmen.

Also: Ja: manchmal muss ich selber über Console selbst starten (ist auch doof, da meine Frau das beim Ausfall nicht hinbekommt).

Wo finde ich dieses Startscript?
FHEM@Proxmox@Nuc: TabletUI als User-Interface (4 Wandtablets) / IOs per ser2net gekapselt
Homematic: Heizung, Fenster, Bewegung | Jeelink: Temperatur | Z-Wave: Bewegung, Temperatur | FS20: Temperatur, Fenster | Viessmann-Heizung eingebunden

hexenmeister

Wenn FHEM nicht von alleine startet, sollte man nach den Ursachen suchen. So ist das kein guter Zustand.

Wie startest Du den FHEM? Über /etc/init.d/fhem? Dann ist das dein Startscript.

Du kannst vor dem perl fhem.pl fhem.cfg noch die Anweisung zum User-Wechsel hinzufügen: sudo -u fhem

Mir ist die Verfügbarkeit wichtig, daher überwache ich die laufende FHEM-Instanz und starte sie bei Bedarf neu. Das Vorgehen habe ich hier beschrieben: http://s6z.de/cms/index.php/homeautomation/fhem/23-fhem-watchdog
Das macht aber natürlich nur Sinn, wenn FHEM sicher alleine anläuft.

alabamajack

Grundsätzlich hilft bei sowas das gute Deutsch-Form
ubuntuusers.de
Für die Rechte könntest du auch folgendes ausprobieren:
sudo chown -cR fhem /opt/fhem
siehe http://wiki.ubuntuusers.de/chown
allerdings nur, wenn wirklich alle Dateien dem Benutzer fhem, oder welcher Benutzer auch immer fhem starten soll,legst.

Das mit dem automatischen starten... tja damit hatte ich auch schon einige Probleme. Sorg erstmal dafür, dass alles sicher läuft und dann kannst ein Startskript schreiben.
Was, gerade bei so 24/7 Sachen ganz gut ist, ist das man regelmäßig neustartet. Ich starte meinen Server(auch auf einem Raspberry + externe Festplatte) z.B. per Cronjob einmal am Tag(mitten in der Nacht) neu(inklusive updates etc.)

Puschel74

Hallo,

und das tägliche Zwangs-neustarten des Servers soll welchen Vorteil haben?

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

alabamajack

Grad beim Raspberry Pi, kommt natürlich drauf an ob man übertaktet hat oder nicht, habe ich die Erfahrung gemacht, dass es hilft. Es beseitigt evtl. vorkommende Leichen(welcher Art auch immer). Insbesondere bei den Modellen aus China hab ich mir durch tägliches neustarten schon einiges gespart.

Es stimmt natürlich, dass dies nicht helfen muss, aber es kann helfen, ich habe auch einen RP in Betrieb gehabt, der über ein Jahr ohne Probleme gelaufen ist ;)

hexenmeister

Ich sehe auch nichts Gutes in täglichen Neustarts. Das ist der letzte Notnagel. Schon besser mit Watchdogs zu arbeiten und so nur bei tatsächlichen Bedarf etwas (re)starten.

Wenn das Problem in der Hardware liegt, dann gehört diese ausgetauscht, die Softwarefehler müssen (soweit möglich) beseitigt werden.


Gunther

So, das steht in meinem Startskript:

#!/bin/sh
# description: start or stop the fhem server
# by Alex Peuchert

### BEGIN INIT INFO
# Provides:             fhem.pl
# Required-Start:       $local_fs $remote_fs
# Required-Stop:        $local_fs $remote_fs
# Default-Start:        2 3 4 5
# Default-Stop:         0 1 6
# Short-Description:    FHEM server
### END INIT INFO

set -e
cd /opt/fhem
port=7072

case "$1" in
'start')


Ist das erstmal korrekt?
FHEM@Proxmox@Nuc: TabletUI als User-Interface (4 Wandtablets) / IOs per ser2net gekapselt
Homematic: Heizung, Fenster, Bewegung | Jeelink: Temperatur | Z-Wave: Bewegung, Temperatur | FS20: Temperatur, Fenster | Viessmann-Heizung eingebunden

franky08

Ich denke, da fehlt einiges, hier mein Script:
#!/bin/sh
# description: Start or stop the fhem server
# Added by Alex Peuchert

### BEGIN INIT INFO
# Provides:             fhem.pl
# Required-Start:       $local_fs $remote_fs
# Required-Stop:        $local_fs $remote_fs
# Default-Start:        2 3 4 5
# Default-Stop:         0 1 6
# Short-Description:    FHEM server
### END INIT INFO

cd /opt/fhem
port=7072

case "$1" in
'start')
        echo "Starting fhem..."
        perl fhem.pl fhem.cfg
        RETVAL=$?
        ;;
'stop')
        echo "Stopping fhem..."
        perl fhem.pl $port "shutdown"
        RETVAL=$?
        ;;
'status')
        cnt=`ps -ef | grep "fhem.pl" | grep -v grep | wc -l`
        if [ "$cnt" -eq "0" ] ; then
                echo "fhem is not running"
        else
                echo "fhem is running"
        fi
        ;;
*)
        echo "Usage: $0 { start | stop | status }"
        RETVAL=1
        ;;
esac
exit $RETVAL


VG
Frank
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

Gunther

Danke Frank! Ich hätte mal Scollen sollen... Alles drin.

zusätzlich steht bei mir noch:
echo "Enabling I2C on P5 ..."
        sudo hipi-i2c e 0 1
        sudo chown fhem:root /dev/i2c-0

Kann das die Probleme verursachen?
FHEM@Proxmox@Nuc: TabletUI als User-Interface (4 Wandtablets) / IOs per ser2net gekapselt
Homematic: Heizung, Fenster, Bewegung | Jeelink: Temperatur | Z-Wave: Bewegung, Temperatur | FS20: Temperatur, Fenster | Viessmann-Heizung eingebunden