Homebridge Installationsanleitungen

  • Warum bin ich zu blöd :P ?

    Hmmm, ich weiß nicht alles 8o.

    Die Fehlermeldung lautet tatsächlich

    [ ▒/var/homebridge/config.json▒ ist ein Verzeichnis ]?


    Was sind das für hübsche gepunktete Rechtecke in der Fehlermeldung?


    Versuch mal das Verzeichnis, das da nicht sein soll, zu löschen:

    sudo rm -r /var/homebridge/config.json


    und dann machst du weiter mit Schritt 2:

    sudo nano /var/homebridge/config.json


    Stefan

  • Super, schon einmal ein Schritt weiter!


    jetzt habe ich folgendes Problem:


    SyntaxError: Unexpected number in JSON at position 9
    at JSON.parse (<anonymous>)
    at Server._loadConfig (/usr/local/lib/node_modules/homebridge/lib/server.js:212:19)
    at new Server (/usr/local/lib/node_modules/homebridge/lib/server.js:56:38)
    at module.exports (/usr/local/lib/node_modules/homebridge/lib/cli.js:32:16)
    at Object.<anonymous> (/usr/local/lib/node_modules/homebridge/bin/homebridge:17:22)
    at Module._compile (internal/modules/cjs/loader.js:776:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:787:10)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)
    homebridge.service: Main process exited, code=exited, status=1/FAILURE
    homebridge.service: Failed with result 'exit-code'.



    Lt. https://jsonformatter.curiousconcept.com/ aber alles in Ordnung?

  • Moin,

    es muss doch in Zeile 9

    Code
    1. "platforms":

    heissen oder nicht??? also platforms

    so steht es auch in der Fehlermeldung " SyntaxError: Unexpected number in JSON at position 9 "

    der Code sieht gut aus, der Jsonformater erkennt Schreibfehler nur im Code, aber nicht bei Schreibfehlern in der Syntax ;)

    ich verstehe nicht das du die Methode Custom gewählt hast Zeile 20+21, Aber wenn es so läuft ist ja gut :-)

  • ich verstehe nicht das du die Methode Custom gewählt hast Zeile 20+21

    Das kam so: da unsere Anleitung eine Homebridge installiert, die unter dem User homebrigde mit stark eingeschränkten Rechten läuft, kam es zu einem kleinen Unfall. Die ursprüngliche Konfiguration sah vor, dass die Log-Methode systemd sein sollte, und das schien auch prima zu funktionieren. Aber in Wirklichkeit funktionierte es nicht so recht.


    Jedes Mal, wenn homebridge-config-ui-x das Log anzeigt, ruft das Plugin auf dem Raspi den Befehl sudo journalctl -o cat -n 500 -f -u homebridge auf. Kann man auch im Terminal eingeben, das Ergebnis ist die Live-Anzeige des Logs. Dort bricht man die Ausgabe mit ctrl-c wieder ab.


    Bei einem Switch zwischen dem Logs-Tab des Web-UI zu einem anderen (beispielsweise zur Pluginliste) wird der Loganzeigeprozess wieder gestoppt. Da homebridge-config-ui-x dafür aber kein ctrl-c eingeben kann, beendet das Plugin den Prozess sudo journalctl mit einem kill. Aber der User homebridge darf keinen Prozess killen, der mit sudo aufgerufen wurde, selbst wenn er ihn selber aufgerufen hat. Das führt dazu, dass der kill-Prozess fehlschlägt. Leider wird das nur in Logs vermerkt, die man nie liest (/var/log/auth.log).


    Weil der kill-Prozess fehlschlägt, führt das dazu, dass der Befehl sudo journalctl nicht beendet wird. Er läuft einfach weiter. Und immer, wenn man in homebridge-config-ui-x einen Blick auf das Log werfen will, wird ein neuer Prozess gestartet, und noch einer, und noch einer, bis irgendwann journalctl die Fehlermeldung ausspuckt, dass zu viele Logs geöffnet sind. Bei mir war das beim 128. Mal soweit.


    Mit ps aux sieht man dann die vielen sudo journalctl-Prozesse laufen. Sie werden alle erst beendet, wenn man homebridge-config-ui-x stoppt. Das passiert ja häufig, wenn man beispielsweise die Homebridge nach dem Update eines Plugins neustartet. Daher ist mir das ein Jahr lang nicht aufgefallen.


    Abhilfe hat geschaffen, dass der Loganzeigeprozess ohne sudo aufgerufen wird, also nur mit journalctl -o cat -n 500 -f -u homebridge. Damit das geht, muss sich der User homebridge in der Usergruppe systemd-journal befinden. Und in der Konfiguration von homebridge-config-ui-x muss dann die Logmethode von systemd auf custom umgestellt werden.


    Läuft die Homebridge unter dem User pi, passiert das alles nicht, denn der User pi darf halt alles.


    Stefan

  • Leider tauch jetzt auf einmal folgendes Problem auf:



    Habe die Homebridge mit gleicher config auf einem anderen Rasp ohne Probleme laufen, komme leider nicht mehr weiter :(

  • Da müsste ich etwas mehr von der Fehlermeldung sehen, nämlich das, was davor stand.


    Stefan

  • Das kam so: .......


    Stefan

    Wow, FETTES Dankeschön - für die Erklärung, ich müsste mal wieder in deine SUPER und einzigartige UP_TO_DATE_Anleitung schauen.... und es bei mir auch noch einbauen / umbauen ;-)


    wo ich hier schon mal Online bin, hatte wer schon Sync Probleme mit Mojave HK ? - glaube das ich schon mal gefragt hatte....