Danke für den Link, nur wie installiere ich das Plugin wenn es nicht am npm Server liegt?
Versuchs mal mit npm install -g https://github.com/passatgt/homebridge-nold-open
Danke für den Link, nur wie installiere ich das Plugin wenn es nicht am npm Server liegt?
Versuchs mal mit npm install -g https://github.com/passatgt/homebridge-nold-open
Klar ahnte ich es. Das ahnt jeder, dem das auch immer wieder mal passiert.![]()
Stefan
Sieht doch gut aus. 192.168.178.59 ist die WLAN-Adresse. Was passiert denn, wenn du dich per ssh auf diese Adresse verbinden willst?
Stefan
Mit SSH-Keys. Selbst wenn er kein Passwort hätte, würde eine Passwortabfrage kommen, was den ganzen Prozess behindern würde.
Ich hab mich damit nur ganz kurz beschäftigt, also keine fünf Stunden, und habe es vom Raspi aus nicht zum Laufen bekommen. Ob per homebridge-wol oder per shell commands - keine Chance. Der Mac pennt weiter.
Also habe ich mir so beholfen: ich rufe vom Raspi aus ein shell script auf dem Mac (192.168.1.20) auf:
ssh [email protected] /Users/homebridge/wakemac.sh
Das Skript wakemac.sh sieht so aus:
Und so schläfere ich ihn auch ein oder fahr ihn ganz runter:
ssh [email protected] /Users/homebridge/sleepmac.sh
was das hier macht:
Nicht schön, aber passt so.
Stefan
Die Version ist "nur" eine alpha. Aber ich denke das Sie zumindest genauso schlecht funktioniert wie die alte
Alles andere hätten wir beim besten Willen auch nicht akzeptiert.
Stumpf die Lösung zu präsentieren halte ich für keine optimale Lösung. <br>Wie soll da die zukünftige Administration aussehen?</p>
Es wird keine Administration geben, so simpel ist das. Außerdem ist das hier ein Homebridge-Forum und nicht der Administrationskurs Teil III.
Man kann natürlich alles immer vorkauen und auf dem Silbertablett servieren.
Wieder nix gelernt.
Ach komm. Json ist am Anfang immer etwas unhandlich, und ich habe es auch nur gelernt, weil ich mir das json-Zeugs von anderen angesehen und mit meinem verglichen habe. Du schreibst doch selbst "Und grundsätzlich schauen, wie eine Json Config aussieht." Wo ist nun der Unterschied, ob man erst Google anschmeißt oder es hier liest?
Außerdem sehe ich eindeutig einen Lernprozess. Cosmodors Frage "heißt Quasi ich kann mir das extra "Platform" sparen ?" weist eindeutig darauf hin, und ich erspare mir sogar, sie zu beantworten ![]()
Gruß
So ist es besser:
{
"bridge": {
"name": "Homebridge",
"username": "CC:22:3D:E3:CE:35",
"port": 51826,
"pin": "031-45-154"
},
"accessories": [],
"platforms": [
{
"platform": "config",
"name": "Config",
"port": 8080,
"sudo": false
},
{
"platform": "Fritz!Box",
"username": "MaxFritz",
"password": "xxxxxxx",
"name": "Fritz!Box",
"url": "http://192.168.10.1"
}
]
}
Alles anzeigen
Ich stufe das mal als harmlose Fehlermeldung ein, wüsste aber gerne etwas über die Bedeutung und warum die entsteht.
Das weiß ich nicht. npm und node.js sind nichts, was ich irgendwie verstehe und ich bin zu faul, um mich damit hinreichend zu beschäftigen.
Zunächst handelt es sich nicht um einen Fehler, sondern um eine Warnung. Ich ignoriere sowas solange, bis es wirklich Probleme bereitet ![]()
Fünfmal gelesen, und immer noch falsch. Es muss natürlich heißen:
nano /etc/sudoers.d/homebridge
Nein, kein mkdir, sondern nur sudo nano ~/etc/sudoers.d/homebridge.
Jaja, die Pfade. Standard. Das sprechen wir jetzt gemeinsam aus und dann lachen wir ein bisschen. Ich hab zwei Raspis und zwei Homebridges, und auf beiden sind die Pfade unterschiedlich. Es ist sehr wahrscheinlich, dass die Pfade in meiner obigen Konfiguration auch für dich stimmen. Man kann's aber auch vorher nachchecken mit:
which npm (sollte so etwas wie /usr/local/bin/npm anzeigen)
which node (sollte so etwas wie /usr/local/bin/node anzeigen)
ls -l /usr/local/lib/node_modules/homebridge-config-ui-x/node_modules/nsp/bin/nsp (sollte eine Datei anzeigen)
Entweder befinden sich das Zeugs in /usr/local/lib und /usr/local/bin oder aber in /usr/lib und /usr/bin. Mit which kann man das herausfinden.
systemctl und journalctl sind immer in /bin.
Was das starten von homebridge angeht: ich logge mich als pi ein und starte mit sudo systemctl start homebridge. Meine Homebridge wird aber unter dem User homebridge gestartet. Der User homebridge wird festgelegt in /etc/systemd/system/homebridge.service. Startest du per initd, dann wird er festgelegt in /etc/init.d/homebridge.
Was das automatische Starten angeht - mit einfachen Worten: der Rechner wird sozusagen mit root-Rechten gestartet. Das heißt, dass alle Startskripte von root ausgeführt werden. Nur root darf beispielsweise einen Service starten, der auf einem Port < 1024 lauscht, beispielsweise einen Webserver auf Port 80 oder einen Mailserver auf Port 25. So einem wie pi ist derartiges Treiben verboten.
Das ist sehr vereinfacht ausgedrückt, bessere Informationen liefert https://wiki.ubuntuusers.de/Bootvorgang/. Die wesentliche Aussage ist aber richtig: beim Booten werden die Startskripte von root ausgeführt.
Was das manuelle Starten angeht: natürlich kann man sich auch als User homebridge einloggen und dann starten. Da würde es dann sogar ohne sudo gehen. Als root sollte man sich nicht einloggen können. Aber was interessieren die Homebridge-Szene schon krude Sicherheitsstandards auf Linuxmaschinen
. Sind hier natürlich auch nicht so wichtig, aber nur solange, bis das Wundertöchterchen vom Smartphone aus die Büchse hackt, weil das root-Passwort "geheim" lautet.
Ich kann mich nur als pi einloggen, weil ich weder das Passwort für den User homebridge kenne noch das für root.
Stefan
"USER: homebridge
DIR: /usr/local/lib/node_modules
CMD: sudo -E -n npm --no-update-notifier install --unsafe-perm homebridge-http@latest
sudo: Ein Passwort ist notwendig
Hast du dem User homebridge die Rechte eingeräumt, sudo überhaupt benutzen zu dürfen?
Lege die Datei /etc/sudoers.d/homebridge an mit diesem Inhalt:
homebridge ALL=(root) SETENV:NOPASSWD: /usr/local/bin/npm, /bin/systemctl restart homebridge, /bin/journalctl, /usr/local/bin/node /usr/local/lib/node_modules/homebridge-config-ui-x/node_modules/nsp/bin/nsp check
Hier wird festgelegt, das der User homebridge die Rechte hat, die oben aufgeführten Befehle mit root-Rechten auszuführen. Bitte achte darauf, dass die Pfade stimmen.
Sollte das zu keinem Erfolg führen, dann gib dem User homebridge für alle Befehle die root-Rechte (unelegant, weil dicker Hammer auf kleinen Nagel). Gleiche Datei wie oben, aber mit diesem Inhalt:
Du kannst das testen, indem du dich als User homebridge auf dem Raspi einloggst und auf der Shell den Installationsbefehl sudo -E -n npm --no-update-notifier install --unsafe-perm homebridge-http@latest eingibst. Geht es dort ohne Passwort, dann kann's auch config-ui-x.
Gruß
Ok, hier kommt wirklich was durcheinander. Meine Tipps zur Neuinstallation:
1) Es kommt darauf an, welcher User die Plugins installiert oder Homebridge startet. Homebridge legt seine Konfigurationsdateien im Homeverzeichnis des ausführenden Anwenders an, was prinzipiell ein blöder Quatsch ist. Bei meiner ersten Installation ergab sich das gleiche Durcheinander wie bei dir jetzt. Teile der Konfiguration waren in /root/.homebridge, andere in /home/pi/.homebridge. Grauenhaft. Das darf nicht passieren.
2) Ich würde immer versuchen, eine Installation so zu machen, dass nicht root, sondern der User pi oder ein anderer User homebridge ausführt. Das bedeutet, dass die Konfiguration in /home/pi/.homebridge oder halt in /home/andereruser/.homebridge liegt und niemals in /root/.homebridge. Noch besser ist es, die Dateien würden außerhalb der Homeverzeichnisse liegen.
3) Man kann homebridge den Pfad angeben, wo es die Konfiguration suchen soll. Das geht mit dem Parameter -U, also homebridge -U /home/pi/.homebridge oder wie bei mir homebridge -U /var/lib/homebridge. Festgelegt wird das im Startscript /etc/init.d/homebridge oder in /etc/default/homebridge, je nach dem ob man homebridge mit sudo /etc/init.d/homebridge start oder sudo systemctl start homebridge startet. Damit ist man immer auf der sicheren Seite, wo die Konfigurationsdateien ausgelesen werden.
4) Plugins sollten immer global installiert werden. Das heißt, dass der Installationsbefehl npm immer mit der Option -g verwendet wird, also beispielsweise sudo npm install -g homebridge-config-ui-x oder npm install -g --unsafe-perm homebridge-config-ui-x. Lässt man das -g weg, landet das Plugin wieder im Homeverzeichnis.
Hat man das Ding erstmal am Laufen, dann läuft homebridge wirklich prima. Aber die eigentliche Hürde ist die Installation, und da staunt nicht nur der Linux-Neuling. Ich benutze Linux in professionellen Umgebungen seit 1998, und ich hab's beim ersten Mal auch nicht hinbekommen.
Viel Erfolg, und bei Fragen fragen.
Kann es evtl sein das man sich nicht mit User Pi sondern mit Root anmelden muss ? dafür habe ich das Passwort nicht und konnte es per Befehl auch nicht ändern weil das Programm zum ändern das alte will..
@sschuste Config X hatte ich auch schon instaliert aber beim versuch mich anzumelden leider keinen Erfolg gehabt user: Admin PW: Admin. Danch ging gar nix mehr und ich musste Raspi neu aufsetzen
![]()
Werde es aber nochmal testen .
Grüsse Max
Wenn die Konfiguration im Homeverzeichnis von root liegt, dann kannst du als User pi nicht darauf zugreifen. Das Passwort von root änderst du so:
Einloggen als pi, dann
sudo su -
passwd
Möglicherweise geht es dann immer noch nicht, weil sich root nicht per ssh auf den Raspi einloggen darf. Um es zu erlauben, muss du die Einstellungen für den sshd ändern:
sudo nano /etc/ssh/sshd_config
Dann die Zeile suchen, die mit #PermitRootLogin beginnt und unter diese Zeile eine neue einfügen, die so aussieht:
PermitRootLogin yes
Abspeichern, Editor verlassen, sshd neu starten mit service ssh reload. Auf die App glotzen.
(Disclaimer: ich heiße es nicht für gut, den Login für root freizuschalten, lieber Hammer -> Daumen, aber jetzt soll erstmal irgendwie irgendwas funktionieren.)
Der von dir angegebene Username und das Passwort für config-ui-x sind falsch. Richtig ist admin und admin. Deine Fehlerbeschreibung "Danach ging gar nix mehr" interpretiere ich so, dass der Raspi nicht mehr funktionierte und gleichzeitig der Herd in der Küche seine Arbeit einstellte, sowie auch das Auto in der Garage, die Straßenbeleuchtung und das örtliche Elektrizitätswerk, eigentlich alles, bis gar nix mehr ging.
Ehrlich, so war's doch, oder? Wenn nicht, dann noch ein Tipp: man Dinge auch reparieren, indem man die Änderungen in config.json rückgängig macht. ![]()
Stefan
Ich kenne diese Kamera nicht und setze auch keine andere ein, aber ich liebe schon mal ihre Beschreibung bei Amazon:
Fantastisch! Fast so gut wie die Gerte des Singweisengriffers.
Ich kann also nur theoretisch fabulieren, aber ich würde es versuchen mit homebridge-people und homebridge-cmd. Ersteres löst per Automation eine Szene aus, die zweiteres triggert. Soll heißen: sobald homebridge-people eine Anwesenheit oder Abwesenheit bemerkt, schaltet ein Szene homebridge-cmd auf on und startet damit ein Skript auf dem Raspi, das die Kamera steuert.
Stefan
Ein Blick ins log ist möglicherweise hilfreich. Auskunft erteilt entweder
sudo systemctl restart homebridge; sudo journalctl -fau homebridge oder
sudo /etc/init.d/homebridge restart; tail -f /var/log/daemon.log oder
sudo /etc/init.d/homebridge restart; tail -f /var/log/syslog
Je nachdem wie du deine Homebridge konfiguriert hast. Falls du nur ins log schauen willst, ohne die Homebridge neu zu starten, dann verwende nur den Teil nach dem Semikolon. Abbruch der Anzeige mit ctrl-c (strg-c).
Stefan
Servus lieber yannic,
Soll in Zukunft das Review auf die Produktseite wandern? Sollen technische Details angezeigt werden? Soll es immer ein Thema im Forum für Fragen und Diskussionen im Forum geben, auf das ich auf der Produktseite verlinke?
Ja. Wenn man vor einem Kauf so viele Infos wie möglich sammeln will, dann wäre eine solche Produktseite eine Gnade
. Bei den technischen Details wäre ich vorsichtig - wie schnell ändert sich irgendeine Spezifikation, vor allem bei chinesischen Herstellern. Das müsste dann ständig nachgehalten werden.
Hab mal getestet, leider ist wenn ich in der App auf Konfig Manuell bearbeiten gehe , keine Veränderung.
Immer wenn ich die App benutzen will, halte ich kurz inne und schlag mir dann einen großen Nagel ins Knie, einfach nur, um den Schmerz zu minimieren.
Da du wahrscheinlich noch nicht so weit bist, es mir nachzutun, ist das natürlich keine hilfreiche Antwort. Hast du den Pfad zu /root/.homebridge/config.json in der App konfiguriert? Das macht man unter Tools - Einstellungen - config.json.
Wenn ich mir so die Homebridge-Konfiguration auf meinem iPhone anschaue und dann mein Blick auf den 27-Zöller mit dem Terminalprogramm fällt, dann fällt mir bei besten Willen kein Grund ein, warum ich mit der App abquälen soll. Ok, jeder mag seine Masochismen so pflegen, wie es ihm gefällt.
Natürlich ist die App wunderbar Klickibunti, und weil ich selber ein Fan von Klickibunti bin, empfehle ich die Installation von https://www.npmjs.com/package/homebridge-config-ui-x. Damit kannst du die weitere Installation und Verwaltung von Plugins mit einem Webbrowser auf deinem PC bewerkstelligen. Das ist sehr bequem und funktioniert ganz wunderbar. Du wirst auf Updates hingewiesen, kannst sie per Mausklick installieren, für die config.json gibt es einen Syntaxcheck, du kannst das Log einsehen. Alles was die iOS-App kann - just bigger.
Stefan
Versuchs mal mit
sudo nano /root/.homebridge/config.json oder
nano .homebridge/config.json
Da steht wirklich Punkthomebridge.
Sieht das besser aus?
Stefan