Die üblichen Tricks, wie das neu Starten aller iOS Geräte funktionieren diesmal nicht.
Lesen und verstehen würde mir helfen
. Sorry, ich hab leider keinen weiteren Tipp für dich.
Die üblichen Tricks, wie das neu Starten aller iOS Geräte funktionieren diesmal nicht.
Lesen und verstehen würde mir helfen
. Sorry, ich hab leider keinen weiteren Tipp für dich.
oder einfachsudo poweroff. Man sollte jeden Computer herunterfahren, bevor man die Sicherung abschaltet.
Stefan
App in Android mit einer Pushmitteilung (Ich kann mir zwar nicht vorstellen, dass es sowas gibt, aber lasse mich gerne eines besseren belehren)
Vielleicht homebridge-pushed-notification zusammen mit https://pushed.co?
Stefan
In config-ui-x auf Log klicken oder im Terminal sudo journalctl -fau homebridge eingeben.
Stefan
Starte erst mal dein iPhone neu.
Klar kannst du ihn ändern. Allerdings dürfen die Ports 1-1024 nur von root verwendet werden. Deine Homebridge läuft aber mit den Rechten des Users homebridge. Kleine Falle ![]()
Stefan
Wir brauchen den Inhalt des Logfiles.
Stefan
Du startest es in der Konsole, und wenn du die Konsole beendest, dann stirbt auch homebrigde. Du machst also alles richtig.
Dein Fehler weiter oben lautet unter anderen:
Error: EACCES: permission denied, open '/var/homebridge/persist/AccessoryInfo.CC223DE3CE30.json'
Error Access permission denied. Du darfst da nicht lesen oder schreiben. Der Fehler tritt bei vielen Dateien in /var/homebridge auf, was nicht so sein sollte. Versuche mal das:
sudo chmod 755 /var/homebridge
sudo chown -R homebridge:homebridge /var/homebridge
sudo systemctl restart homebridge; sudo journalctl -fau homebridge
Stefan
Und zum Thema Sicherheit: Ja, das is in der Theorie bestimmt weniger cool.. aber wie sieht es jetzt (ohne Aluhelm) in der Praxis aus?
Ich denke, man kann es vernachlässigen.
Ist der "Bug" eigentlich bekannt, dass die ui bei der Ramauslastung immer anzeigt, das der ganze Ram quasi in Benutzung ist obwohl er das eigentlich nicht ist?
Wieso ist er das nicht? Woher weißt du das?
"platform": "website-to-camera",
"platform": "website-camera",
Gestern habe ich dank des schlechten Wetters etwas mit diesem Plugin gespielt und einen super Anwendungsfall für mich gefunden
Nicht nur für dich! Für mich auch. Da hab ich bei mir doch mal schnell Frankfurt Süd genommen ![]()
Danke.
nur schlappe 184376 Dateien die wohl alle meinem User Pi gehören.
Lol, aber lass es einfach so. Tatsächlich macht es nicht viel aus, da auf unseren Raspis nur homebridge läuft. Auf großen Computern, auf denen viele Programme installiert sind, kann eine solche Aktion ordentlich Ärger verursachen.
Wahrscheinlich gehören nicht alle Dateien dem User pi. Das findest du heraus mit find /usr/local -user pi | wc -l. Mit dieser Information kannst du dann folgendes anfangen: nix ![]()
Gruß
Also, Google gab es mir gleich an allererster Stelle aus.
Hier rein schauen schadet auch nix:
https://blog.loetzimmer.de/201…t-auf-die-shell-echo.html
Und hier im Forum wurde auch schon viel diskutiert:
Alexa per Shell fernsteuern - Alexa Sprachausgabe Text-to-Speech über Homebridge in HomeKit
Stefan
Vielleicht über die command line
sudo chown -R $USER /usr/local && npm install homebridge-Pluginname -g
Was macht dieser Befehl? Als allererstes bewirkt er, dass ich mich mit Grausen abwende. Das ist seine primäre Funktion.
Ansonsten besteht er aus den folgenden Zutaten:
chown -R: change owner. Dieser Befehl weist einer oder einer Menge von Dateien einen neuen Besitzer zu. Der Parameter -R sagt aus, dass dies rekursiv geschehen soll, also über alle Unterverzeichnis hinweg und über alle Unterverzeichnisse in den Unterverzeichnissen und allen Dateien in diesen Unterverzeichnissen. Der neue Besitzer der Datei(en) ist dann
$USER: Wer ist dieser ominöse $USER? Das ist genau der User, als der man gerade eingeloggt ist. Kann man testen mit echo $USER. Dem gehören dann alle Dateien in
/usr/local: ist ein Verzeichnis auf dem Raspi, das eine Menge Dateien enthält. Der Begriff usr steht für Unix System Ressources, und im Verzeichnis liegen eine Menge Dateien, von denen manche für den Betrieb der auf dem Raspi installierten Programme essentiell sind. Er sollte immer root gehören.
Der Befehl chown -R $USER /usr/local wird, wenn man als pi eingeloggt ist, also als chown -R pi /usr/local interpretiert. Ist man als homebridge eingeloggt, wird er als chown -R homebridge /usr/local interpretiert. Ist man gerade als root unterwegs, dann bedeutet er chown -R root /usr/local und ist man der Benutzer Erwin, dann bedeutet er chown -R Erwin /usr/local.
Danach gehören alle Dateien im Verzeichnis /usr/local entweder pi, homebridge, root oder Erwin, je nachdem, wie man gerade eingeloggt war. Auf meinem Raspi befinden sich 80512 Dateien in /usr/local, die jetzt alle auf einmal irgendeinem neuen Benutzer gehören. Mir kann niemand weis machen, dass er von allen 80512 Dateien weiß, ob das gut oder schlecht oder egal ist, welchem User sie gehören. Vor allem wird die Herstellung des Ursprungzustands ein Ding der Unmöglichkeit sein.
Wer wissen will, wieviele Dateien er in seinem /usr/local liegen hat, kann das leicht mit find /usr/local | wc -l herausfinden. Wird wahrscheinlich bei jedem unterschiedlich sein, weil wir alle unterschiedlich viele Plugins benutzen.
Man könnte mit chown $USER alle Verzeichnisse auf dem Raspi so behandeln, und wenn man nur das richtige trifft, kann man den Raspi danach neu aufsetzen. Garantiert. Als Äquivalent kann man auch mit einer Schaufel auf das Ding einprügeln.
Das wirklich Lustige ist: wenn der User homebridge nicht in Verzeichnisse schreiben kann, die root gehören, dann hat das schon so seine Richtigkeit. Aber wenn man schon die Rechte so verändern will, dass er es doch kann, dann hilft chown $USER /usr/local nichts, wenn man den Befehl als User pi ausführt, denn danach gehören die Dateien alle dem User pi und der User homebridge kann da immer noch nicht schreiben. Dafür hat man nun eine hässliche Installation.
Die Moral von der Geschichte: wenn der User homebridge an einer Stelle nicht schreiben kann, dann muss er das woanders tun. Das kann er in seinem Homeverzeichnis /home/homebridge und im Homebridge-Konfigurationsverzeichnis /var/homebridge. Sonst nirgendwo. Das ist auch keine Eigenart von Homebridge und auch keine von Linux. Das ist auf einem Mac genauso wie unter Windows. Ja, ich weiß, das brauchte man damals nicht zu beachten auf dem C64 und unter DOS 2.11, auch nicht auf Apple System 7 oder Windows 95. Aber diese Dinger konnte man ja auch alle allein mit einem bösen Blick erledigen. Egal, die Plugins bieten oft die Möglichkeit an, einen Speicherort anzugeben, und wenn sie gut programmiert sind, dann schreiben die ganz automatisch in das Verzeichnis, in dem config.json liegt und wo das Schreiben erlaubt ist.
DJay: Ich mache dir nicht den kleinsten Vorwurf, dass du die frohe Kunde mit chown $USER verbreitest. Das ist nämlich die Lösung irgendeines Plugin-Programmierers, die sowieso nur dann funktioniert, wenn man die Homebridge als User pi laufen lässt. Dem Typen gehören die Ohren langgezogen und danach muss er in die Ecke zum Schämen. Mit dem Gesicht zur Wand.
So, das musste jetzt mal raus.
Stefan
PM] Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/homebridge-people-guest-mode/node_modules/node-persist/storage/.node-persist'
Da darfst du nicht hinschreiben. Setze in config.json:
"cacheDirectory": "/var/homebridge/homebridge-people/storage",
Stefan
Allerdings möppert das Log immer noch rum :-/
:-/ Hmmm.
Ich kann das leider nicht richtig nachstellen, weil bei mir Homebridge auf dem einen Raspi läuft und Pihole auf dem anderen. Ich habe das direkt auf der Shell getestet, und da ging das bei mir. Was ich also getan habe, war auf der Shell:
sudo su - homebridge (macht dich zum User homebridge)
pihole disable
pihole enable
exit
Nachdem ich die sudoers-Datei bearbeitet hatte, konnte der User homebridge das Pihole ab- und wieder einschalten. Geht das bei dir auch?
Dann begebe ich mich mal in das große Land der Spekulation: was passiert, wenn du die suoders-Datei nocheinmal bearbeitest und ganz hinten /usr/local/bin/pihole anfügst?
sudo visudo -f /etc/sudoers.d/homebridge
Ergebnis:
homebridge ALL=(root) SETENV:NOPASSWD: /usr/local/bin/npm, /bin/systemctl restart homebridge, /bin/journalctl, /usr/local/bin/node, /bin/bash, /usr/local/bin/pihole
Stefan
Kann ich.
Da die Bridge unter dem user "homebridge" läuft,
Ich nehme an, du hast die Homebridge nach der Forenanleitung installiert. Die Installation dort ist viel restriktiver als normale Installationen, und daher ist dem User homebridge nicht erlaubt, auf irgendwelche Befehle sudo anzuwenden (bis auf vier Kommandos). Festgelegt ist das in /etc/sudoers.d/homebridge.
Du hast in deinem Skript alles richtig gemacht, wenn auch umständlich. Es würde auch einfach so gehen:
und ich würde es sogar so machen:
aber der User homebridge darf kein sudo auf bash machen. Das ist gut, denn es erhöht die Sicherheit des Systems, aber es ist schlecht, weil es deinen Fehler erzeugt. Ich habe herumexperimentiert, ob man darauf verzichten kann, dem User homebridge die sudo-Rechte auf bash zu geben, aber man muss das leider tun. Doof, doof, doof. Sei's drum.
Mache also folgendes:
sudo visudo -f /etc/sudoers.d/homebridge
und hänge an die Zeile ganz hinten an: /bin/bash
so dass sie so aussieht:
homebridge ALL=(root) SETENV:NOPASSWD: /usr/local/bin/npm, /bin/systemctl restart homebridge, /bin/journalctl, /usr/local/bin/node, /bin/bash
Speichere sie ab und versuche es noch einmal.
Stefan
Ich Update meine Plugins und die Homebridge immer erst wenn ein Plugin ein Änderung/Funktion mit sich bringt, die ich als nützlich empfinde. Ansonsten lasse ich die Plugins und die homebridge unberührt, ganz nach dem Motto "never change a running system".
Da bin ich völlig anders
. Zumindest die Plugins werden bei mir regelmäßig gepimpt.
Stefan