NEWS
js-controller 4.0.x jetzt für alle User im STABLE!
-
erstmal danke - bitte genau erklären - haben das ganze wieder auf js-c 4.x gebracht und mit jsonl
wie genau müssen wir vorgehen - wieder zuerst iob setup costum
und was dann
sudo -H -u iobroker npm i iobroker.js-controller@3.3.22 --production
-
Das weiß ich auch nicht.
Aber ich weiß, dass man nicht npm in Verbindung mit sudo (ohne weitere Optionen) verwendet.
Da scheint mir auch schon was an den Rechten verbogen worden zu sein. Sonst dürfte da kein 'permission denied' erscheinen.
Wie sehen die Rechte an
/opt/iobroker/node_modules/iobroker.js-controller/lib/setup/../../tmp
denn jetzt aus? -
@thomas-braun sagte in js-controller 4.0.x jetzt für alle User im STABLE!:
/opt/iobroker/node_modules/iobroker.js-controller/lib/setup/
pi@homebridge:/opt/iobroker/node_modules/iobroker.js-controller/lib/setup $ ls -la total 356 drwxr-xr-x+ 2 iobroker iobroker 4096 Mar 3 12:15 . drwxr-xr-x+ 9 iobroker iobroker 4096 Mar 3 12:15 .. -rw-r--r--+ 1 iobroker iobroker 11580 Oct 26 1985 pluginInfos.js -rw-r--r--+ 1 iobroker iobroker 44624 Oct 26 1985 setupBackup.js -rw-r--r--+ 1 iobroker iobroker 76814 Oct 26 1985 setupInstall.js -rw-r--r--+ 1 iobroker iobroker 2944 Oct 26 1985 setupLicense.js -rw-r--r--+ 1 iobroker iobroker 14964 Oct 26 1985 setupMultihost.js -rw-r--r--+ 1 iobroker iobroker 8127 Oct 26 1985 setupPacketManager.js -rw-r--r--+ 1 iobroker iobroker 17674 Oct 26 1985 setupRepo.js -rw-r--r--+ 1 iobroker iobroker 49970 Oct 26 1985 setupSetup.js -rw-r--r--+ 1 iobroker iobroker 30709 Oct 26 1985 setupUpgrade.js -rw-r--r--+ 1 iobroker iobroker 30738 Oct 26 1985 setupUpload.js -rw-r--r--+ 1 iobroker iobroker 23092 Oct 26 1985 setupUsers.js -rw-r--r--+ 1 iobroker iobroker 14964 Oct 26 1985 setupVendor.js -rw-r--r--+ 1 iobroker iobroker 9030 Oct 26 1985 setupVisDebug.js pi@homebridge:/opt/iobroker/node_modules/iobroker.js-controller/lib/setup $
-
der server läuft ohne fehler meldungen und hat iob setup custom mit file !! und js-cont - 4x
-
ist dieser befehl richtig ?
sudo -H -u iobroker npm i iobroker.js-controller@3.3.22 --production
-
@liv-in-sky
Muss dann auch noch im richtigen Verzeichnis ausgeführt werden.cd /opt/iobroker
-
danke war der richtige befehl
haben restore gemacht - warten gerade darauf, dass er alles wieder installiert
-
würdest du das bitte noch richtigstellen - sonst viele fehler:
in
sudo -H -u iobroker npm i iobroker.js-controller@3.3.22 --production
-
@liv-in-sky Da muss eigentlich nichts angepasst werden. In einem korrekt installierten System, bei dem man nicht irgendetwas mittels sudo oder root-Login "verbogen" hat, und bei dem der angemeldete User der Gruppe iobroker angehört, funktioniert der Befehl exakt so ohne dass man den Befehl npm mittels sudo -u iobroker als user iobroker ausführen müsste.
Je weniger man irgendwo sudo verwendet, umso besser. Erst recht, wenn man nicht (genau) weiss, warum man es verwendet. Auf korrekten Installationen mit korrekten Usern und Gruppen lässt sich alles in und um iobroker ohne sudo bewerkstelligen.
Gruss, Jürgen -
@wildbill sagte in js-controller 4.0.x jetzt für alle User im STABLE!:
n einem korrekt installierten System
und vor allem, wenn man das gemacht hat was hinter dem Befehl in Klammern steht!
-
etwas seltsam - wir haben ein image von raspi debian bullseye installiert, dann die installation von iobroker aufgerufen - die ja alles mitinstalliert (nodejs14 )
da war nichts verbogen oder anderes gemacht worden
- dann wollte ich einen restore machen
- ging nicht , da backup file mit js-c 3.x war
- also wollte ich mit dem befehl ohne sudo den js-c downgraden
- ging nicht - weil jsonl
- dann müßten wir nochmal den js-c 4.x installieren, da iobroker nicht mehr startete
- dann mit iob setup custom auf file geändert
- dann versucht mit dem befehl (mit und ohne sudo) down zu graden
- bei beiden versuchen kamen rechte probleme
- dann wieder js-c4 installiert, da system wieder nicht startete
- dann wieder auf file umgestelt und mit dem befehl sudo -u iobroker ...... downgrade
- erst dann funktionierte es
definitiv war nichts am system vebogen - es war so installiert, wie es in der doku steht
vielleicht habe ich was anderes falsch gemacht - aber ungefähr so war das vorgehen - ab und an lief der "fixer"
-
@homoran ich war immer im iobroker verzeichnis
-
@liv-in-sky Was da bei Dir schief gelaufen ist und warum, kann ich natürlich nicht sagen. Aber ich kann sagen, dass bei korrekter Installation mit korrekt eingerichtetem User, der in der Gruppe iobroker ist, mit Ordnern unterhalb /opt/iobroker in denen noch kein root unterwegs war oder mit sudo hantiert wurde, definitiv der Befehl aus der Anleitung ohne sudo direkt als User funktioniert. Also muss bei Deiner Installation irgendwann irgendwo irgendwas anders gelaufen sein, als es im Standard tut. Spätestens nach einem einmaligen
Iobroker fix
Sollte es dann aber ohne sudo tun. Sonst ist irgendwo was faul.
Und wenn es mit sudo -u iobroker geht, mit dem normalaen User ohne sudo aber nicht, dann scheint entweder der User nicht der Gruppe iobroker anzugehören, oder die Datei- oder Ordnerrechte nicht (mehr) zu passen. Der Befehl sudo -u iobroker sorgt ja nur dafür, dass nachfolgender Befehl als User iobroker, und eben nicht als root odrer mit sonstwie erweiterten Rechten ausgeführt wird.Gruss, Jürgen
-
werden wir nicht mehr rausfinden - ich kann erst morgen wieder checken, wie es dem server geht.
danke für deine antwort - alles gut im moment
-
@liv-in-sky Warum willst du den controller wieder downgraden??
-
@apollon77 sagte in js-controller 4.0.x jetzt für alle User im STABLE!:
Danach zeigt iob statuswieder "file" an. Dann kann ein Backup für den Restore in einer kleineren Version erstellt werden oder ein Downgrade via npm i iobroker.js-controller@version (Vorher ins ioBroker Verzeichnis wechseln!) auf die gewünschte Version erfolgen.
weil es da so steht
-
@liv-in-sky Da steht Wenn man downgraden will tue es so und so Nichts anderes Ich habs nochmal gelesen und wüsste nicht was ich ändern kann ... Mach gern nen vorschlag wenn für dich was unklar war
-
ich muss ehrlich gestehen, das ich den genauen ablauf vergessen habe - waren mehrere stunden um am server, um den fehler zu finden
letztlich wollte ich einen restore machen, der nicht ging, da wir das system ganz neu installiert hatten und jsonl bekamen, aber nur ein backup mit einem 3.x controller mit file hatten
ich bin mir leider nicht mehr sicher, ob wir das neue system auf "file" umstellten und dann gleich einen restore versuchten und das auch wieder schief ging
daher dachte ich wohl, es ist besser, die neue installation auf file umzustellen, dann einen downgrade auf js-c 3.x und dann den restore zu fahren - was ja letztlich zum erfolg führte
da ich beim letzten mal deine anleitung nicht richtig gelesen hatte und du mich darauf hinweien musstest, dass ich unter faq die lösung finde, dachte ich diesmal, lies die faqs und darin fand ich dann die anleitung, in der von backup und restore die rede war - und die wollte ich dann ausführen - ich habe deine faq so gelesen, dass ein restore nur geht, wenn ich den js-c downgrade - sorry - mein fehler - es handelt sich um ein fremdsystem - da wollte ich sicher sein, dass ich keinen "blödsinn" installiere
es kommt daher kein vorschlag von mir - lass es einfach so, wie es ist - mir reicht, dass es jetzt läuft
-
@liv-in-sky sagte in js-controller 4.0.x jetzt für alle User im STABLE!:
aber nur ein backup mit einem 3.x controller mit file hatten
Aber darum geht es gar nicht. Das ist egal. Beim backup restore gilt die DB die gerade eingestellt ist. Was vorher war als Backup erstellt wurde ist an der Stelle egal.
Deswegen steht da auch nichts von Restore, sondern nur von Downgrade des Controllers !!!
-
@apollon77
Seit js-controller Version 4.0.15 startet iobroker nach einem Restart nicht mehr, weil in der Datei "/opt/iobroker/iobroker-data/iobroker.json" der period Wert zu groß ist. Auch das heutige Update auf 4.0.18 bringt keine Änderung.In den Controller-Einstellungen sind 120 Minuten hinterlegt in der JSON Datei werden aber die Sekunden gespeichert, siehe Screenshot. Ändere ich die 7200000 in 120, startet iobroker wieder.