Fehler beim autostart von Homebridge

  • Hallo zusammen,


    ich habe die Homebridge auf meinem PI3 komplett neu aufgesetz mit dem strecht Image und node 9.3.0 dann homebridge nach der Anleitung von dieser Seite aufgespielt mit allen Updates. Danach noch das Homematic Plugin und alles lief wirklich perfekt. Es werden alle Geräte erkannt und funktioniern auch. Nun zu meinem Problem: Habe zum Schluß noch den Autostart aus der Anleitung eingespielt. Nach dem Start den Status der Hombridge mit

    Code
    sudo /etc/init.d/homebridge status

    abgefragt und ich bekomme die Meldung: Homebridge is running PID 467.

    In EVE und Home sagt er mir allerdings, dass die Geräte nicht erreichbar sind, egal wie lange ich warte.

    Mache ich einen restart

    Code
    sudo /etc/init.d/homebridge restart

    funktioniert alles problemlos obwohl er im Terminal folgende Meldung ausgibt nach dem Befehl:

    Homebridge closed

    Homebridge starting

    Homebridge is not running

    Wenn ich danach nochmal die Statusabfrage mache sagt er: Hombridge is running PID 724


    Wenn ich jetzt den PI mit sudo shutdown -r 0 neu starte habe ich wieder den gleichen Effekt wie am Anfang. Kann in diesem Zustand auch die Bridge in Eve löschen und neu suchen. Er findet Sie und alle Geräte, Sie sind nur nicht zu schalten. Nach einem Restart der Homebridge wieder alles okay.

    Irgendetwas muss beim Autostart hängen. Vielleicht hat ja einer von euch eine Idee.


    Vielen Dank

  • Image ist von dieser Seite: https://www.raspberrypi.org/downloads/raspberry-pi-desktop/

    (Debian Stretch with Raspberry Pi Desktop , Release date: 2017-11-16 , Kernel version: 4.9)



    2 Mal editiert, zuletzt von BigM ()

  • npm -v homebridge

    Das zeigt nur die Version von dem instellierten npm.

    Wobei diese auch sehr alt ist, aktuell ist 8.9.3.


    Loaded: loaded (/etc/init.d/homebridge


    Bei Dir wird die homebridge mit:

    sudo /etc/init.d/homebridge start -> gestartet

    sudo /etc/init.d/homebridge stop -> gestopt

    sudo /etc/init.d/homebridge status -> akt. Status anzeigen


    Fehlermeldungen beim "restart" sollten mit:

    Code
    sudo tail -f /var/log/syslog

    zu sehen sein.

    die meldungen entwerder auch im syslog oder:

    /var/log/homebridge.log

    /var/log/homebridge.err


    dort mal nach meldungen schauen.

  • Glaube 8.9.4 ist gerade heute rausgekommen und das ist die LTS node version und hat die npm 5.6.0. Ich habe die node 9.3.0 installiert und diese enthält die npm 5.5.1. Ist also die Aktuellste.


    pi@raspberrypi:~ $ npm -v

    5.5.1

    pi@raspberrypi:~ $ node -v

    v9.3.0

    pi@raspberrypi:~ $ sudo tail -f /var/log/syslog

    Jan 3 10:17:01 raspberrypi CRON[2160]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)

    Jan 3 11:17:01 raspberrypi CRON[2185]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)

    Jan 3 12:17:01 raspberrypi CRON[2211]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)

    Jan 3 13:17:01 raspberrypi CRON[2237]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)

    Jan 3 14:17:01 raspberrypi CRON[2264]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)

    Jan 3 15:17:01 raspberrypi CRON[2290]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)

    Jan 3 16:17:01 raspberrypi CRON[2316]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)

    Jan 3 17:17:01 raspberrypi CRON[2341]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)

    Jan 3 18:17:01 raspberrypi CRON[2367]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)

    Jan 3 19:17:01 raspberrypi CRON[2393]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)


    pi@raspberrypi:~ $ sudo tail -f /var/log/homebridge.log

    tail: '/var/log/homebridge.log' kann nicht zum Lesen geöffnet werden: Datei oder Verzeichnis nicht gefunden

    tail: Keine Dateien mehr übrig



    Hast Du noch einen Tip für mich ?

  • Habe einen alten Beitrag von Dir gefunden:


    Zitat von Det:


    Habe es gefunden,

    Mit

    sudo nano /etc/init.d/homebridge

    Die Zeile

    su - pi -c "homebridge > /dev/null 2>&1 &"


    ändern in

    su - pi -c "homebridge >> /var/log/homebridge.log 2>> /var/log/homebridge.err &"

  • in der Aufregungn node und npm verwechselt,

    node ist laut https://nodejs.org/dist/latest/ 9.3.0 mit npm 5.5.1

    aktuell ist npm 5.6.0,

    aber egal.


    Datei existiert nicht, dann mal in der /etc/init.d/homebridge den start umstellen auf:

    Code
    #        su - pi -c "homebridge > /dev/null 2>&1 &"
            su - root -c "homebridge >> /var/log/homebridge.log 2>> /var/log/homebridge.err &"
            echo "Homebridge starting"

    evtl steht beidir ein anderer User drin.

    sann werden die LOG Dateien erstellt.

  • Habe ich auch vor kurzem durch det angelegt.Habe aber diese Fehler drin :

    det Hast du vielleicht eine Idee woher die kommen?

  • Das ist der typische Fehler wenn bei Netatmo der DatenBank server nicht erreichbar ist,

    leider hat das Plugin den Fehler das es dann abschmiert und unter umständen die homebridge abstürtzt, bzw. nicht komplett startet.


    Beides leider schon erlebt. da es letztns auch mal länger dauerte bis Netatmo reagiert hat.

    Habe ich die config.json von netatmo befreit (vorübergehnd).

  • Sind die oberen Fehler auch von Netatmo?

  • Okay nach dem ändern und einem neustart bekomme ich folgende Meldungen:


    Das heißt doch, dass ich die Homebridge als falscher Benutzer starte, oder ? Der Port stimmt doch nicht?

  • Danke für deine Hilfe. Dann werde ich das mal beobachten. Dank dir, kann ich ja jetzt meine Fehler der Homebridge sehen.??

  • komisch ist das er immer andere Ports nimmt

    /root/.homebridge/config.json) not found.

    Das ist der Fehler. Das log nicht zu früh abbrechen.


    Mit welchem User stiertet die hombridge in der Start Datei?


    Hier im log hast du homebridge als root gestartet.


    (Sorry wegen dem Text, bin gerade mit dem iPad unterwegs)

    Code
  • Jetzt stehe ich total auf dem Schlauch, ich bin doch als PI angemeldet, wenn ich jetzt den Befehl ohne sudo eingebe, möchte er ein Passwort, das Passwort ist aber nicht das selbe wie bei der Anmeldung? Woher kommt das denn nun?

    pi@raspberrypi:~ $ /etc/init.d/homebridge start

    Passwort:

    su: Fehler bei Authentifizierung

    Homebridge starting

    Homebridge is not running

    pi@raspberrypi:~ $

  • Und ich habe nochmal eine grundsätzlich Verständnisfrage. Habe ja alles nach der Anleitung installiert. Warum ist das nicht richtig als PI-User oder doch? Hätte es alles als root-User installiert werden müssen? Was habe ich bei der Installation falsch gemacht, dass es bei mir nicht an dem Ort ist wo es hingehört, damit das Start-Skript und die Befehle normal funktionieren?


    Übrigens, vielen Dank für Deine Hilfe

  • Zum Verständnis.

    Man kann hombridge als User pi starten, der darf aber nicht pingen was das people Plugin benutzt.

    Und wol Plugin.

    Man kann auch als User root homebridge starten, der darf dan auch pingen.

    Deine config.json liegt jetzt im Ordner unter pi deswegen findet es homebridge nicht wenn diese als root gestartet wird. Homebridge sucht standardmäßig immer im homeverzeichniss von dem User der es startet nach der .homebridge/config.json

  • nochmal einen Gedanken schritt zurück.

    Pi darf in /etc/init.d/ nichts starten.

    Der Aufruf muss mit sudo sein

    Aber in der Datei / etc/init.d/homebridge.

    Steht da wirklich su - pi -c "homebridge..

    Oder hast du meine Zeile rein kopiert?

  • Da habe ich Deine Zeile eingefügt: