NEWS
Iobroker Ordner auch unter home?
-
Ich habe bei meiner Installation was seltsames endeckt und versteh nicht so recht, ob das stimmt, wohl eher nicht.
Ich habe unter /home noch ein Ordner /iobroker liegen und darin wohl die Installation von Node und NPM, was doch eigentlich unter /opt/iobroker sein sollte.
Node und NPM wird doch vor der IOBroker Installation installiert, wie kommt das dann in den iobroker Ordner? Also IOBroker läuft und das ohne irgendwelche Fehler im Log samt allen Adaptern, aber irgendwie sieht mir das doch recht seltsam aus.
Installiert habe ich nach der manuellen Anleitung mit den aktuellen Versionen
pi@Pi3Bplus:~ $ node -v v8.15.0 pi@Pi3Bplus:~ $ nodejs -v v8.15.0 pi@Pi3Bplus:~ $ npm -v 6.6.0
-
Da ich im Moment viel bastle, habe ich die automatische IOBroker Installation gerade auf ein frisch eingerichtete Raspi Debian gebügelt und sofort liegt auch hier ein iobroker Ordner im /home Verzeichnis. Könnte da mal einer was dazu schreiben, ob das mittlerweile normal ist oder nicht?
Ich habe ne recht alte Installation und da gibts nur den iobroker unter /opt, deshalb bin ich mittlerweile etwas am Rätseln, welche Installation nun richtig ist oder nicht. Beide laufe ohne Fehler und mit derzeit den gleichen Node und NPM Versionen.
pi@Pi3Bplus:~ $ cd /home pi@Pi3Bplus:/home $ ls iobroker pi pi@Pi3Bplus:/home $ pi@Pi3Bplus:/home $ cd /opt pi@Pi3Bplus:/opt $ ls iobroker pigpio vc pi@Pi3Bplus:/opt $
pi@Pi3Bplus:~ $ node -v v8.15.0 pi@Pi3Bplus:~ $ nodejs -v v8.15.0 pi@Pi3Bplus:~ $ npm -v 6.6.0
-
Ja das ist mittlerweise normal!
Während der Installation wird ein neuer Benutzer "iobroker" angelegt und der bekommt ein Home-Verzeichnis (/home/iobroekr). Ab sofort läuft ioBroker nämlich als User iobroker und nicht mehr per Root.
Root ist ungefährlich und hat in Bezug auf npm in den aktuellen Problemen zu vielfältigen Problemen geführt. Daher haben wir es mit dem neuen Installer so umgebaut.
Also: Alles wie es sein soll.
-
Danke für die Info, sollte vielleicht mit in die Installation-Doku. Erspart dann die Verwunderung :lol:
Kann es übrigens auch sein, dass die manuell (alte Installation) seit gestern gar nicht mehr läuft? Zumindest kommt da seit gestern die Meldung dass es nicht mehr supported wird.
So letzte Frage dazu, es gab ja auch den Hinweis , dass unter neuen NPM Versionen "sudo" bei der Adapter Installation zu vermeiden sei und wenn unbedingt nötig das ganze mit dem Parameter -H und dem Zusatz –unsafe-perm erfolgen muss. Ist das damit auch noch notwendig, oder hat das damit nichts zu tun und was bewirkt der Parameter -H (ich finde nur -h) und der Zusatz überhaupt?
Ich halte mich in der Regel an solche Anweisungen, wenn ich von etwas nicht viel Ahnung habe, nur wüsste ich gerne, was ich da überhaupt mache, sonst lerne ich das nie
-
wenn unbedingt nötig das ganze mit dem Parameter -H und dem Zusatz –unsafe-perm erfolgen muss. Ist das damit auch noch notwendig, oder hat das damit nichts zu tun und was bewirkt der Parameter -H (ich finde nur -h) und der Zusatz überhaupt? `
-H sorgt dafür, dass beim Wechsel zum User "root" auch dessen Home-Verzeichnis verwendet wird. Ansonsten bekommst du das Problem, dass in deinem eigenen Home-Verzeichnis nachher NPM-Dateien liegen, die aber root gehören. Dann kommt es zu den schönen "EACCES"-Fehlern bei späteren Installationen.
–unsafe-perm sorgt dafür, dass bei Skripten, die während der Installation gestartet werden auch die Permissions des eigentlichen Installationsprozesses gelten (mit sudo also root). Ist das nicht der Fall, werden diese Skripte mit verringerten Rechten ausgeführt und können nötige Dinge möglicherweise nicht ausführen.
Kann es übrigens auch sein, dass die manuell (alte Installation) seit gestern gar nicht mehr läuft? Zumindest kommt da seit gestern die Meldung dass es nicht mehr supported wird. `
Richtig. Beim neuen Installer haben wir so viel aus vergangenen Erfahrungen gelernt, dass es nicht mehr möglich ist, das alles von Hand durchzuführen - bzw. die Dokumentation viel zu aufwändig wäre:-
User anlegen mit den korrekten Permissions (genug, aber nicht zu viele)
-
Drei Formen vom Autostart unterscheiden
-
Häufig benötigte Pakete für die meisten Anwendungen vorinstallieren
Und alles vereint in einer Routine
-
-
Kann es übrigens auch sein, dass die manuell (alte Installation) seit gestern gar nicht mehr läuft? Zumindest kommt da seit gestern die Meldung dass es nicht mehr supported wird. `
Für Linux und MacOS: genau seit dem 21.1., aber ja
Der neue Installer macht da inzwischen sooo viel mehr, da macht das anders keinen Sinn mehr.
So letzte Frage dazu, es gab ja auch den Hinweis , dass unter neuen NPM Versionen "sudo" bei der Adapter Installation zu vermeiden sei und wenn unbedingt nötig das ganze mit dem Parameter -H und dem Zusatz –unsafe-perm erfolgen muss. Ist das damit auch noch notwendig, oder hat das damit nichts zu tun und was bewirkt der Parameter -H (ich finde nur -h) und der Zusatz überhaupt?
Ich halte mich in der Regel an solche Anweisungen, wenn ich von etwas nicht viel Ahnung habe, nur wüsste ich gerne, was ich da überhaupt mache, sonst lerne ich das nie
`
Am besten gar nichts besonderes machen! Adapter installieren bitte per Admin-UI oder per iobroker Kommandozeilen-Funktionen. Da ist sichergestellt das alles korrekt abläuft.
KEIN sudo mehr und kein anderer kram bitte
-
iobroker Kommandozeilen-Funktionen?
Was ist das denn? Ist das über Github und "beliebig" oder gibts hier ne Konsole, die ich noch nicht gefunden habe?
-
Für Linux und MacOS: genau seit dem 21.1., aber ja
Der neue Installer macht da inzwischen sooo viel mehr, da macht das anders keinen Sinn mehr. `
Bei den Installationen, die ich vor laaanger Zeit mal gemache habe und immer nur per update auf die aktuelle gebracht habe muss ich aber nichts machen, oder? Bei mir läuft das alles unter 'root' und schon immer ohne sudo.
Oder sollte ich die Gelegenheit nutzen und ein Backup machen, neu per Install Script aufsetzen und dann restore?
-
iobroker Kommandozeilen-Funktionen? `
iobroker start/stop
iobroker install adaptername
iobroker add instanz
…
-
Bei den Installationen, die ich vor laaanger Zeit mal gemache habe und immer nur per update auf die aktuelle gebracht habe muss ich aber nichts machen, oder? Bei mir läuft das alles unter 'root' und schon immer ohne sudo.
Oder sollte ich die Gelegenheit nutzen und ein Backup machen, neu per Install Script aufsetzen und dann restore? `
Never change a running system
-
Für Linux und MacOS: genau seit dem 21.1., aber ja
Der neue Installer macht da inzwischen sooo viel mehr, da macht das anders keinen Sinn mehr. `
Bei den Installationen, die ich vor laaanger Zeit mal gemache habe und immer nur per update auf die aktuelle gebracht habe muss ich aber nichts machen, oder? Bei mir läuft das alles unter 'root' und schon immer ohne sudo.
Oder sollte ich die Gelegenheit nutzen und ein Backup machen, neu per Install Script aufsetzen und dann restore? `
Einer der nächsten Plane ist ein Skript welches ältere Installationen auf den aktuellen Stand "hochhievt" … aber bis dahin kann alles so bleiben wie es ist. Der neue Weg läuft halt an ein paar Stellen einfach runder und hat weniger Rechteprobleme und so
-
Github und "beliebig" `
Bitte nicht! http://www.iobroker.net/docu/?page_id=8 … r_Experten> Eine Installation von GitHub sollte nur nach Rücksprache mit dem Entwickler durchgeführt werden.
-
Never change a running system
`
No Risk - No Fun :lol:Aber ich lass es dann mal leise und zufrieden vor sich hin laufen. Im Moment schnurrt es ganz problemlos vor sich hin.
-
Github und "beliebig" `
Bitte nicht! http://www.iobroker.net/docu/?page_id=8 … r_Experten> Eine Installation von GitHub sollte nur nach Rücksprache mit dem Entwickler durchgeführt werden.
`Ja klar, habe mich vielleicht etwas ungeschickt ausgedrückt und meinte diese Vorgehensweise:
` > Die Entwickler- oder Betaversionen von Github werden über das Octocat Symbol installiert.http://www.iobroker.net/docu/?page_id=5 … stallieren
Entweder einfach im pulldownmenü Github, oder über Eingabe der Adresse des Github Repositories unter dem Reiter beliebig Dieses kommt besonders bei “externen” Adapterentwicklern vor. `
Den enigma2 Adapter z.B. bekomme ich eben nur über Reiter beliebig, oder würde das auch mit
npm install iobroker.enigma2
funktionieren?
-
Ahhh deswegen konnte ich heute partout kein VIS Backup einspielen da die neue unterm Benutzer iobroker läuft.
Was fûr ein Passwort wird denn für den neuen user verwendet?
-
Was sollte dich da beim Backup einspielen hindern? Was gabs denn für Fehler.
Gesendet vom Handy …
-
Den enigma2 Adapter z.B. bekomme ich eben nur über Reiter beliebig, oder würde das auch mit
npm install iobroker.enigma2
funktionieren? `
Das wäre dann eine legitime Ausnahme. Allerdings wäre es dann wohl gut, wenn der Entwickler das Teil mal freigibt, sodass es über die offiziellen Kanäle installiert werden kann. -
Was fûr ein Passwort wird denn für den neuen user verwendet? `
Der hat kein Passwort und ein Login als dieser ist auch nicht möglich. Sollte auch nicht nötig sein. -
Was sollte dich da beim Backup einspielen hindern? Was gabs denn für Fehler. `
Es gab keine Schreibberechtigung.
Ich habe das Backup als root eingespielt und somit konnte der iobroker User nicht mehr darauf zugreifen.
Also ich habe nur meine vis zurück gespielt und da is mir aufgefallen, dass die anderen Ordner unter dem Benutzer iobroker angelegt wurden. Den Ordner dem iobroker user zu übergeben hat nichts gebracht. Meine eingespielte vis wurde ständig mit der main vis überschrieben.
Erst ein chmod 775 half.
Hatte mich nur gewundert, da esdie ganzen andere male einwandfrei funktioniert hatte.