NEWS
ioBroker unter Windows installieren (ohne Installer)
-
Ich hab mir auch meine Windows Installation geschossen.
Nach der oben beschriebenen Anleitung hab ich eine Neuinstallation gestartet, und danach meinen gesicherten Iobroker-Data Ordner zurück gespielt.
Die Adapter werden dann aktualisiert aber danach lässt sich der Dienst auch bei mir nicht mehr neu starten. (Fehler 1067)
Mir ist aufgefallen, dass im Ordner node_modules der Ordner node_windows gelöscht wird.
Nach zurück kopieren des Ordners lässt sich der Dienst wieder starten.Warum das so ist? Keine Ahnung und heute werde ich das auch nicht mehr eruieren.
Vielleicht hat ja von euch jemand eine Idee? -
@stefande sagte in ioBroker unter Windows installieren (ohne Installer):
Mir ist aufgefallen, dass im Ordner node_modules der Ordner node_windows gelöscht wird.
Nach zurück kopieren des Ordners lässt sich der Dienst wieder starten.Ich hatte den Ordner gar nicht.
Auch nicht in meinen Sicherungen.Frage:
Woher weißt du das der Ordner gelöscht wurde?
Und wo hast du dann die Dateien her?mfg
-
@bahnuhr sagte in ioBroker unter Windows installieren (ohne Installer):
@stefande sagte in ioBroker unter Windows installieren (ohne Installer):
Mir ist aufgefallen, dass im Ordner node_modules der Ordner node_windows gelöscht wird.
Nach zurück kopieren des Ordners lässt sich der Dienst wieder starten.Ich hatte den Ordner gar nicht.
Auch nicht in meinen Sicherungen.Frage:
Woher weißt du das der Ordner gelöscht wurde?
Und wo hast du dann die Dateien her?mfg
Ich hatte den kompletten ioBroker Ordner unmittelbar nach der Neuinstallation gesichert.
In der Neuinstallation war der entsprechende Ordner vorhanden.
Erst danach habe ich den iobroker-data Ordner ausgetauscht, und die Neuinstallation durchgestartet.
Der Rest war Try and Error oder auch das berühmte Stochern im Nebel. -
@stefande
Das mit dem Node-Ordner ist interessant! Ich könnte mir vorstellen, daß das mit dem Einspielen veralteter Software per update-/upgrade-Befehl zusammenhängt. @Stabilostick hatte an anderer Stelle berichtet, daß "lustigerweise" ausgerechnet mit diesen beiden (zum updaten gedachten) Update-Befehlen ALTE Dateien nachinstalliert werden - logisch ist definitiv anders...EDIT: @stefande: Eben erst wurde mir Dein neuester Beitrag angezeigt. Ein paar Details zu Deinem erfolgreichen "Nebelstochern" wären hilfreich!
@JB_Sullivan berichtet an anderer Stelle folgendes:
"Sobald man unter dem 3er js-controler ein Adapter Update oder eine Adapter Neuinstallation oder eine Adapter Löschung durchführen will, werden von den 650 Unterordnern im node_modules Verzeichnis, je nach belieben mehrer hundert gelöscht. Das danach ioB noch Schrottwert hat, dürfte klar sein."Letztendlich sind wir offensichtlich also wieder mal an dem Punkt, daß nicht die händische Installation oder der Installer Schuld an der Misere sind, sondern irgendwelche Macken der ioBroker-Software selbst! Ich empfehle von daher, nicht die "neuesten" (veralteten) Dateien zu verwenden (update/upgrade) und auch explizit nicht den 3er js-controller, sondern vielleicht lieber mit erprobten Versionen zu arbeiten (insbes. js-controller VOR Version 3).
Evtl. werde ich meine obige Anleitung dann mal noch mit einem entsprechenden Warnhinweis und den Befehlen zur Installation einer bestimmten Version ergänzen, wenn Interesse besteht. -
@P-A-L-A-D-I-N sagte in ioBroker unter Windows installieren (ohne Installer):
@stefande
Das mit dem Node-Ordner ist interessant! Ich könnte mir vorstellen, daß das mit dem Einspielen veralteter Software per update-/upgrade-Befehl zusammenhängt. @Stabilostick hatte an anderer Stelle berichtet, daß "lustigerweise" ausgerechnet mit diesen beiden (zum updaten gedachten) Update-Befehlen ALTE Dateien nachinstalliert werden - logisch ist definitiv anders...EDIT: @stefande: Eben erst wurde mir Dein neuester Beitrag angezeigt. Ein paar Details zu Deinem erfolgreichen "Nebelstochern" wären hilfreich!
Ich hab halt festgestellt, dass nachdem sämtliche fehlenden Module nach installiert waren, sich der ioBroker nicht mehr starten lies.
Nachdem ich den node_modules Ordner wieder mit dem "jungfräulich gesicherten" ersetzt habe, lies sich der Dienst wieder starten, und das ganze ging aufs neue los.
Ich hab dann auch den defekten node_module Ordner gesichert, und hab dann mit einer Mischung vom defekten und jungfräulichem Ordner (bis m aus defekt, ab n aus neu) weiter gemacht. Und so konnte ich den Ordner node-windows als Schuldigen ausmachen.Der Ordner wurde im Laufe meines Updates und diversen Neustarts des Dienstes und des PCs mehrfach gelöscht, was dann natürlich auch wieder zum Fehler geführt hat.
Mittlerweile hatte ich das System einige Stunden in Betrieb, und der Ordner hat jetzt auch mehrere Neustarts überlebt.@bahnuhr
Ich hab den Ordner mal angehängt.
node-windows.rarWie ist es denn bei dem Rest hier. Ist bei euch der Ordner vorhanden?
-
@stefande sagte in ioBroker unter Windows installieren (ohne Installer):
Ich hab den Ordner mal angehängt.
Danke.
Man weiß ja nie für was man es noch gebrauchen kann. -
@stefande sagte in [ioBroker unter Windows installieren (ohne Installer)]
Der Ordner wurde im Laufe meines Updates und diversen Neustarts des Dienstes und des PCs mehrfach gelöscht, was dann natürlich auch wieder zum Fehler geführt hat.
Mittlerweile hatte ich das System einige Stunden in Betrieb, und der Ordner hat jetzt auch mehrere Neustarts überlebt.Ist dieser funktionierende und nicht "mit automatischer Selbstzerstörung ausgestattete" node_windows Ordner jetzt der, den "meine" händische Installation zuerst anlegt (wenn alles noch sauber läuft) oder der nach irgendeinem Update-Schritt, irgendwelchen Adapter-Aktualisierungen bzw. -Installationen o.ä.?
Habe aktuell meinen Rechner neu aufgesetzt und werde bei der Installation des ioBroker (irgendwann die Tage geplant) mal ein genaues Auge auf diesen Node-Ordner haben! -
@P-A-L-A-D-I-N sagte in ioBroker unter Windows installieren (ohne Installer):
@stefande sagte in [ioBroker unter Windows installieren (ohne Installer)]
Der Ordner wurde im Laufe meines Updates und diversen Neustarts des Dienstes und des PCs mehrfach gelöscht, was dann natürlich auch wieder zum Fehler geführt hat.
Mittlerweile hatte ich das System einige Stunden in Betrieb, und der Ordner hat jetzt auch mehrere Neustarts überlebt.Ist dieser funktionierende und nicht "mit automatischer Selbstzerstörung ausgestattete" node_windows Ordner jetzt der, den "meine" händische Installation zuerst anlegt (wenn alles noch sauber läuft) oder der nach irgendeinem Update-Schritt, irgendwelchen Adapter-Aktualisierungen bzw. -Installationen o.ä.?
Es ist der Ordner aus der händischen Installation. Er wurde zunächst mehrfach gelöscht und von mir zurück kopiert.
Mittlerweile hab ich node.js auf den letzten 12er, und auch den js-controller auf 3.1.5 angehoben. Beide Updates und auch die damit verbundenen Neustarts liefen ohne Probleme und löschen durch. -
@stefande Da der Fehler ja wohl irgendwie mit dem js-controller zusammenhängt, bleibt zu hoffen, daß sich das Problem mit dem Update auf 3.15 dann endgültig erledigt hat.
Schade, daß die Entwickler selbst so wenig Rückmeldung zu aktuellen Bugs u.ä. geben, sodaß man als einfacher Nutzer kritische Versionen von vorne herein direkt auslassen kann - zumindest wüßte ich jetzt keine Informationsquelle, wo man sich über Probleme mit den jeweiligen Versionen vorab informieren könnte... -
@P-A-L-A-D-I-N
Stimmt schon. Die Windows Nutzer werden hier schon ein wenig Stiefmütterlich behandelt.
Ich bin jetzt aber froh, dass es wieder läuft, auch wenn es mich etliche Stunden gekostet hat. -
Habe eben mal auf einem Laptop nochmal ganz neu installiert.
Und ja, der node-windows Ordner wird gelöscht.
Wieder rein kopiert und der Dienst startet wieder.
Das scheint einwandfrei zu funktionieren.
Frage ist halt:
Warum wird dieser gelöscht ?Weiteres Problem:
Wollte dann meine Sicherung "iobroker-data" rüber kopieren.
Also Dienst gestoppt, kopiert, und Dienst wieder gestartet.!! Die Instanzen werden nicht nachinstalliert. Und auf die admin Seite kommt man auch nicht.
Dienst stoppen, starten klappt aber einwandfrei !!Dann wieder den kleinen data Ordner (der nach der Intallation - mit wenig Instanzen) genommen.
Und alles klappt wieder.Frage:
Warum klappt das jetzt mit dem data ordner nicht ? -
@bahnuhr said in ioBroker unter Windows installieren (ohne Installer):
Und ja, der node-windows Ordner wird gelöscht.
Also bei Installation per Installer gibt's den Ordner gar nicht und der Dienst läuft.
Warum hast du denn auf dem Laptop nicht die Reparatur-Variante von Stabilostick aus dem anderen Thread verwendet? Also Daemon Ordner auf den richtigen Stand bringen? -
@bahnuhr sagte in ioBroker unter Windows installieren (ohne Installer):
Habe eben mal auf einem Laptop nochmal ganz neu installiert.
Und ja, der node-windows Ordner wird gelöscht.
Wieder rein kopiert und der Dienst startet wieder.
Das scheint einwandfrei zu funktionieren.
Frage ist halt:
Warum wird dieser gelöscht ?Weiteres Problem:
Wollte dann meine Sicherung "iobroker-data" rüber kopieren.
Also Dienst gestoppt, kopiert, und Dienst wieder gestartet.!! Die Instanzen werden nicht nachinstalliert. Und auf die admin Seite kommt man auch nicht.
Dienst stoppen, starten klappt aber einwandfrei !!Dann wieder den kleinen data Ordner (der nach der Intallation - mit wenig Instanzen) genommen.
Und alles klappt wieder.Frage:
Warum klappt das jetzt mit dem data ordner nicht ?Hast du den iobroker-data Ordner über den neuen drüber kopiert, oder hast du ihn vorher gelöscht?
Ich hab unmittelbar nach Fertigstellung der Neuinstallation den Dienst gestoppt, und danach den data Ordner AUSGETAUSCHT. Danach habe ich den Dienst wieder gestartet, und es wurden die Instanzen installiert. Da ich einige Icons installiert habe, war schon ziemliche Geduld gefragt. -
@stefande sagte in ioBroker unter Windows installieren (ohne Installer):
Hast du den iobroker-data Ordner über den neuen drüber kopiert, oder hast du ihn vorher gelöscht?
Ich habe beides probiert.
Es funktionierte nicht. -
@Alexi sagte in ioBroker unter Windows installieren (ohne Installer):
Warum hast du denn auf dem Laptop nicht die Reparatur-Variante von Stabilostick aus dem anderen Thread verwendet?
Die Variante von stabilo.. repariert den Dienst.
Und dieser läuft ja. -
@bahnuhr said in ioBroker unter Windows installieren (ohne Installer):
Die Variante von stabilo.. repariert den Dienst.
Und dieser läuft ja.Ich bin verwirrt...
@bahnuhr said in ioBroker unter Windows installieren (ohne Installer):
Und ja, der node-windows Ordner wird gelöscht.
Wieder rein kopiert und der Dienst startet wieder.So wie ich die letzten Beiträge von Stabilostick interpretiert habe, ist dieser node-windows Ordner irgendeine Altlast, die es mal gab, in den aktuellen Installationen aber nicht (mehr?) erforderlich ist. Evtl. hab ich das aber auch falsch verstanden. In einer reinen Installer-Installation gibt's den Ordner jedenfalls nicht und der Dienst läuft trotzdem.
Kannst du mal den Inhalt deiner iobroker.xml aus dem Daemon Verzeichnis posten?
@bahnuhr said in ioBroker unter Windows installieren (ohne Installer):
Warum klappt das jetzt mit dem data ordner nicht ?
Hast du mal ins Log geschaut? Irgendwelche Hinweise, was da schief läuft?
-
@Alexi sagte in ioBroker unter Windows installieren (ohne Installer):
So wie ich die letzten Beiträge von Stabilostick interpretiert habe, ist dieser node-windows Ordner irgendeine Altlast, die es mal gab, in den aktuellen Installationen aber nicht (mehr?) erforderlich ist. Evtl. hab ich das aber auch falsch verstanden. In einer reinen Installer-Installation gibt's den Ordner jedenfalls nicht und der Dienst läuft trotzdem.
Kannst du mal den Inhalt deiner iobroker.xml aus dem Daemon Verzeichnis posten?
Ich hänge mal den Inhalt meiner xml an:
<service> <id>iobroker.exe</id> <name>ioBroker</name> <description>ioBroker service.</description> <executable>C:\Program Files\nodejs\node.exe</executable> <logmode>rotate</logmode> <argument>--harmony</argument> <argument>C:\iobroker\node_modules\node-windows\lib\wrapper.js</argument> <argument>--file</argument> <argument>C:\iobroker\controller.js</argument> <argument>--log</argument> <argument>ioBroker wrapper</argument> <argument>--grow</argument> <argument>0.25</argument> <argument>--wait</argument> <argument>1</argument> <argument>--maxrestarts</argument> <argument>3</argument> <argument>--abortonerror</argument> <argument>n</argument> <argument>--stopparentfirst</argument> <argument>undefined</argument> <stoptimeout>30sec</stoptimeout> <env name="NODE_ENV" value="production"/> <workingdirectory>C:\iobroker</workingdirectory> </service>
In Zeile 8 wird auf den Ordner node-windows zugegriffen.
Hat jemand hier vielleicht mal eine iobroker.xml zum Vergleich? -
So sieht die Datei bei mir aus (Installer Installation):
<configuration> <id>iobroker(SmartHome)</id> <name>ioBroker(SmartHome)</name> <description>ioBroker(SmartHome) Automation Server</description> <executable>"x:\iobroker\SmartHome\nodejs\node.exe"</executable> <arguments>"x:\iobroker\SmartHome\node_modules\iobroker.js-controller\controller.js"</arguments> <workingdirectory>x:\iobroker\SmartHome</workingdirectory> <log mode="roll-by-time"> <pattern>yyyyMMdd</pattern> <keepFiles>14</keepFiles> </log> <stoptimeout>45sec</stoptimeout> <stopparentprocessfirst>true</stopparentprocessfirst> <onfailure action="restart" delay="10 sec"/> <onfailure action="restart" delay="20 sec"/> <onfailure action="none" /> <resetfailure>1 hour</resetfailure> <env name="NODE_ENV" value="production"/> <env name="Path" value="x:\iobroker\SmartHome\nodejs;x:\iobroker\SmartHome\env\npm;%PATH%"/> </configuration>
Es wird also direkt controller.js gestartet, nicht der Umweg über einen Wrapper.
Ich hab allerdings noch den Controller 2.2.9... -
@Alexi
Ich glaube die Herausforderung ist es eine funktionierende Installation mit Controller > 3.x hinzubekommen. Damit fing auch mein Ärger an. -
@stefande said in ioBroker unter Windows installieren (ohne Installer):
@Alexi
Ich glaube die Herausforderung ist es eine funktionierende Installation mit Controller > 3.x hinzubekommen. Damit fing auch mein Ärger an.Schon klar.
Die Frage ist: Ist das node-windows Verzeichnis (und damit wrapper.js) eine Altlast oder nicht.So wie ich Stabilostick im anderen Thread verstanden habe, ist es eine Altlast.Daher würde ich vermuten, das Rückkopieren des node-windows Ordners ist der falsche Weg. Vielversprechende schient mir, das daemon Verzeichnis wieder richtig hinzubekommen.
BTW: Liegt bei dir die controller.js wirklich direkt unter c:\iobroker?
Ist das ein Link oder die eigentliche Datei?