NEWS
ioBroker unter Windows installieren (ohne Installer)
-
@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? -
@Alexi sagte in ioBroker unter Windows installieren (ohne Installer):
@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?Zumindest wenn man der hier von @P-A-L-A-D-I-N erstellten Anleitung auf einem jungfräulichen System folgt, wird scheinbar der node-windows Ordner angelegt.
Demnach kann es eigentlich nach meinem Verständnis keine Altlast sein.
Ich muss aber auch zugeben, dass ich kein Coder bin, und von daher auch einiges für mich Bömische Dörfer sind.
Trotzdem versuche ich, so gut ich kann zu testen und zu helfen.Das ist der Inhalt der Datei controller.js im iobroker Ordner. Also ein Link:
'use strict'; require(__dirname + '/node_modules/iobroker.js-controller/controller.js');
-
@stefande sagte 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.Dem schließe ich mich an! Bei mir klappte alles einwandfrei, auch der Import des gesamten (bei mir sehr umfangreichen) Data-Ordners!
Habe folgende Reihenfolge gehabt:
- Installation nach Vorgehensweise aus dem Thread bzw mit Stabilosticks Installer
- Stoppen des Dienstes, Reinkopieren des Data-Ordners (vorhandene Dateien überschreiben)
- Neustart und alles läuft, übrigens auch noch nach mehrfachem Neustart des Systems!
Die Probleme (ioBroker läuft nach Neustart auf einmal nicht mehr) fingen erst an, als ich das Update des js-Controllers aufgeführt habe - und das wohlgemerkt auch ganz genauso mit einer Installation mithilfe des Windows-Installer.
Da bei beiden Vorgehensweisen das Problem auftritt, scheint also irgendetwas mit dem ioBroker selbst (mutmaßlich dem aktuellen js-Controller) nicht so ganz zu stimmen...Ich halte es nach wie vor am zielführendsten, alles nach Anleitung zu machen und dann lediglich beim js-controller bei Version 2.x zu bleiben.
-
@P-A-L-A-D-I-N sagte in ioBroker unter Windows installieren (ohne Installer):
Ich halte es nach wie vor am zielführendsten, alles nach Anleitung zu machen und dann lediglich beim js-controller bei Version 2.x zu bleiben.
Bist du denn jetzt beim js-controller bei 2.x oder auch mittlerweile höher?
-
Da es mir, nach anfänglich fehlerfreier Funktion der händischen Installation, irgendwann dann doch (eben mit Aktualisierung des js-controller) den ioBroker nach jedem Neustart zerschossen hat, habe ich es im zweiten Anlauf nochmal mit dem Windows-Installer versucht, um zu schauen, ob der Fehler hier ebenfalls auftritt. Da das der Fall war (weshalb ich einen Fehler an der händischen Methode auch quasi ausschließen kann), habe ich mein System vor einigen Tagen komplett neu aufgesetzt. Seitdem habe ich, mangels Zeit, noch keinen neuen Installationsversuch unternommen. Mal schauen, ob ich heute oder morgen dazu komme! Ich werde dann aber mit an Sicherheit grenzender Wahrscheinlichkeit bei der letzten 2er Version des js-controller bleiben, um mir nicht schon wieder alles zu zerschießen. Die 3er Version werde ich nur dann installieren, wenn wir hier eine Lösung für das Problem gefunden haben - will schließlich nicht andauernd meinen Server neu aufsetzen! Das habe ich, seitdem der Fehler erstmals aufgetreten ist, im Zuge der Fehlersuche so oft gemacht, daß irgendwann sogar mein Backup-Programm seine Dienste verweigert hat und mein Image nicht mehr einspielen wollte (daher auch die komplette Neuinstallation).
-
Für den Fall das ich es überlesen habe - im ioBroker Hauptverzeichnis gibt es noch zwei Dateien, die, genau wie der node_modules Ordner bei einem Update/Install oder Löschvorgang zerschossen werden.
Bin jetzt gerade nicht zu Hause und kann nicht nachsehen, wie die Dateien exakt heißen. Eine endet auf _backup. Wenn ihr die Dateigröße vorher / nachher vergleicht, seht ihr, das auch diese beiden Dateien "negativ" bearbeitet werden.
Neben dem einspielen eines vollständigen node_modules Verzeichnis, kopiere ich diese beiden Dateien ebenfalls von meiner letzten funktionierenden Version nach einem Crash wieder in das ioB Verzeichnis.
Fakt ist, js-controller 2.2.9 ist SICHER was Aktualisierungen von Adaptern angeht. Alles was mit js-controller 3.xx daher kommt, zerstört die Datenstruktur der ioB Windows Installation.
Ich habe mitlerweile eine voll upgedatet ioB Installation mit js-controller 2.2.9 in der Hinterhand als "Master" Installation. Das schöne an Windows ist, das man ioB komplett als Verzeichnis sichern und wieder zurück spielen, so man den Ordner Namen für den Windows Dienst nicht verändert hat.
Es gibt aber auch regedit Befehle um den Windows Dienst zu löschen ( sc.exe Tool unter Eingabeausführung starten und dann in das Fenster z.B. sc delete [ioB DienstName] eingeben.
Das Löschen den Dienstes zieht aber in jedem Fall eine Neuinstallation von ioB nach sich.