Homebridge plugin Fehler

  • Guten Tag,

    ich habe ein Problem mit meiner Homebridge.

    Undzwar geht es mir um das "homebridge-weather-plus" Plugin. Dieses habe ich mal installiert gehabt, aber kurz darauf festgestellt das es das Falsche ist. Also habe ich es Deinstalliert und alle Einstellungen in den Konfigurationen wieder rückgängig gemacht. Die Homebridge funktioniert noch einwandfrei nur ist im Protokoll immer der Fehler wie im Bild gezeigt. Weiß jemand wie ich diesen beheben kann?

    Vielen dank im voraus.

  • Du könntest deine config.json ja einmal posten, vielleicht findet sich hier ja doch noch ein Fehler.


    Sollte dort nichts (mit Bezug auf das Plugin) mehr stehen, stoppe die Homebridge doch einmal und sichere dir den Ordner „/var/homebridge/accessories“ irgendwo hin als Backup.

    Danach löschst du den Ordner und startest im Anschluss deine Homebridge neu.

  • Vielleicht ist auch beim Deinstallieren nicht alles so gelaufen, wie es sollte. Manche Plugins verschwinden nicht komplett, warum auch immer. Du könntest versuchen, dem nachzuhelfen mit:


    sudo rm -rf /usr/local/lib/node_modules/homebridge-weather-plus/


    Danach die Homebridge neu starten.


    Stefan

  • Vielen dank Stefan,

    mit deinem Befehl hat es geklappt.


    Ich hätte da eine Frage, was bedeutet der Befehl?

    Könntest du in mir mal aufschlüßeln?


    Vielen Dank.

  • Ich hätte da eine Frage, was bedeutet der Befehl?

    Könntest du in mir mal aufschlüßeln?

    Klar. Der Befehl besteht aus verschieden Komponenten. Die kann ich aber nicht der Reihe nach erklären, sondern muss ein bisschen hin- und herspringen.


    sudo rm -rf /usr/local/lib/node_modules/homebridge-weather-plus/


    Der Löschbefehl lautet rm (remove). Ganz hinten steht, was gelöscht werden soll: /usr/local/lib/node_modules/homebridge-weather-plus/.


    Das sollte eigentlich schon reichen, sollte man denken: Löschbefehl plus das, was gelöscht werden soll. Druff uff die Entertaste und bamm! Aber so leicht ist es nicht. Das, was gelöscht werden soll, ist ein Verzeichnis (auf einer grafischen Oberfläche sagt man Ordner), und dieses Verzeichnis enthält (wahrscheinlich) eine Menge Dateien und Unterverzeichnisse. Der Befehl rm weigert sich, das angegebene Verzeichnis zu löschen, weil es ja noch Dateien enthalten könnte. Deshalb gibt man ihm einen Parameter mit, der ihm sagt, dass er rekursiv arbeiten soll, also in das Zielverzeichnis rein gehen soll und dann Datei für Datei und Unterverzeichnis für Unterverzeichnis löschen soll, bis das angegebene Verzeichnis leer ist. Aus dem rm wird also mit dem Parameter ein rm -r.


    Das -r gehört also zum rm. Aber da steht ja noch ein f. Das f ist auch ein Parameter und heißt eigentlich -f. Es ermächtigt den rm-Befehl, die Samthandschuhe auszuziehen und mit Gewalt zu löschen (mit force). Andernfalls würde der rm-Befehl bei jeder Datei nachfragen "soll ich die wirklich löschen?", und wenn man ein Verzeichnis hat, das 157 Unterordner und 2281 Dateien hat, dann müsste man das halt 2438 mal bestätigen, plus noch ein weiteres Mal für das Verzeichnis, das man dem rm-Befehl mitgegeben hat.


    Über 99% der humanoiden Bewohner dieses Planeten will das nicht. Das letzte Prozent lebt auf Entertasten-Island und verdient sein Geld damit. Da wir beide nicht 2439 mal das Löschen einer Datei bestätigen wollen, erweitern wir den rm-Befehl zu rm -r -f, und da wir sogar zu faul sind, uns zu kratzen, wenn's juckt, ziehen wir das zusammen zu einem rm -rf.


    Ok, da ist er also, unser Befehl: rm -rf /usr/local/lib/node_modules/homebridge-weather-plus/. Geiles Teil. Sieht einfach super aus. Los Raspi, lösch das alles und frag nicht blöd nach. Druff uff die Entertaste und zack? Nö, leider nicht.


    Im Allgemeinen loggt man sich auf seinen Raspi als User pi ein und arbeitet dort als User pi. Der User pi darf alle Dateien verändern und löschen, die ihm gehören. Die Dateien, die ihm nicht gehören, darf er nicht verändern und nicht löschen. So wie im wahren Leben: nach Fertigstellung deiner Biographie willst du nicht, dass jemand Fremdes darin herumschreibt. Das gilt alternativ auch für deinen Einkaufszettel. Ein Ändern oder sogar Wegwerfen würdest Du allerhöchstens nur den Leuten erlauben, die du dazu autorisiert hast. Und so erlaubt der Raspi nicht, dass der User pi das Verzeichnis /usr/local/lib/node_modules/homebridge-weather-plus/ löscht.


    Du brauchst also eine Autorisierung. Und die erhältst du, in dem du dem gesamt Löschbefehl rm -rf /usr/local/lib/node_modules/homebridge-weather-plus/ den Befehl sudo (superuser do) voranstellst. Der Befehl sudo liest in der Datei /etc/sudoers nach, ob der User pi das darf, was er soll, und da der User pi das darf, was er soll, kann das Verzeichnis mit all seinen Unterverzeichnissen und Dateien gelöscht werden, obwohl nichts davon dem User pi gehört. Der User pi bekommt für seinen Löschbefehl temporär Superuser-Rechte zugewiesen (mit dem sudo). Der Superuser wird auf Linux- und Unix-Computern übrigens root genannt (auf Windows heißt er Administrator).


    So einfach isses. Du wirst den sudo-Befehl noch häufig benutzen. Er steht immer vor dem eigentlichen Befehl (hier rm). Und aufpassen! Mit sudo und rm kann man große Taten vollbringen! Es kann soweit führen, dass man sich vor seiner Tastatur sitzend mit den Fäusten auf die Brust trommelt und dabei grunzend ausstößt: "ja!, Ich habe meinen Raspi gelöscht!". Frauen lieben diese Art von Männlichkeit, vor allem, wenn dabei das Licht ausgeht und sie im Dunkeln sitzen.


    Stefan