NEWS
ioBroker unter Windows installieren (ohne Installer)
-
@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.
-
Das deckt sich eins zu eins mit meinen vielen Installationsversuchen! Ich werde in der Installationsanleitung oben mal vorsorglich einen Warnhinweis bez. js-controller 3.x ergänzen, bevor noch jemand mit dem Update blind "ins offene Messer" läuft...
Schade, daß sich von den Entwicklern und "Durchblickern" bislang niemand zur Problematik geäußert hat. Da es ein generelles Problem zu sein scheint, das bei jeder Windows-Installation, egal ob händisch oder mit Installer, auftritt, wäre es ja schon von wirklich allgemeinem Interesse, den Bug im ioBroker / js-controller mal endlich zu beseitigen!
-
@P-A-L-A-D-I-N sagte in ioBroker unter Windows installieren (ohne 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...
Leider will das keiner hören. Man wird sogar noch blöd angemacht wenn man Windows als BS verwendet. Die sind hier alle total Linux verliebt, dabei finde ich das man ioB unter Windows soooooo viel einfacher administrieren kann, ohne alles per Eingabebefehle in einer DOS Box machen zu müssen. Ein Tipfehler unter Linux und du fängst wieder von vorne an - also ich persönlich mag Linux nicht.
-
@JB_Sullivan
Auch dem kann ich nur voll und ganz beipflichten! Ich habe es mehrfach mit Linux versucht und wurde, was die angebliche "Fehlerfreiheit" von Linux angeht, definitiv eines Besseren belehrt! Selbst die Eingabe absolut identischer Befehle in der selben Installation hat hier mitunter schon zu verschiedenen Ergebnissen geführt (muß man wohl nicht verstehen...)!
Von der wenig intuitiven Bedienung und den Unterschieden der verschiedenen Distributionen, die dann wiederum Anpassungen der Befehle erfordern (worauf aber in keiner Anleitung wirklich hingewiesen wird), ganz zu schweigen...
Daß einige ganz hartgesottene Linux-Freaks einem dann auch noch das Gefühl geben, geradezu geistig minderbemittelt zu sein, nur weil man nicht in "deren Welt" lebt und sämtliche Konsolenbefehle (auch noch distributionsabhängig) auswendig kennt, ist noch das Sahnehäubchen oben drauf.
Für mich also definitiv keine echte Alternative, so fehlerhaft, ärgerlich und wenig ausgereift Windoof auch mitunter ist.
Schade nur, daß der ioBroker für Windows (meines Erachtens die erste Wahl, nicht nur für Anfänger) hier im Forum so stiefmütterlich behandelt wird! Der einzige echte Experte, der sich wirklich ernsthaft damit auseinandersetzt, ist wohl Stabilostick - aber der scheint (kein Wunder bei einem "Einzelkämpfer"!) schon seit Wochen und Monaten arbeitsmäßig völlig überlastet zu sein und reagiert nur noch sporadisch auf Anfragen. -
@JB_Sullivan sagte in ioBroker unter Windows installieren (ohne Installer):
Ein Tipfehler unter Linux und du fängst wieder von vorne an
TabCompletion...
-
@All
Ich finde 5816 Installationen nicht so wenig.
-
@P-A-L-A-D-I-N ich habe nicht alles mitgelesen, aber gibt es schon irgendwo ein Issue zu dem Problem?
-
@Thomas-Braun sagte in ioBroker unter Windows installieren (ohne Installer):
TabCompletion
Das ist durchaus (zumindest mir) bekannt, aber ich meinte damit aber wenn man mehrzeilige Konfigurationsänderungen vornehmen muss und sich dann in Zeile 8 von 10 z.B. bei erzeugen von Dateinamen vertippt.
Eine echte Rückmeldung über diesen vertipper gibt es nämlich nicht und dann wird eine Datei angelegt die in keinem Zusammenhang zu dem steht was man davor eigentlich erreichen wollte - und schon funktioniert es nicht.
Ich kann @P-A-L-A-D-I-N zu 100% nur zustimmen.
-
Auch ich stimme euch beiden vollumfänglich zu.
Wie sigi dargestellt hat, sind die Windows Nutzer ja gar nicht so wenige. -
@J-A-R-V-I-S sagte in ioBroker unter Windows installieren (ohne Installer):
@P-A-L-A-D-I-N ich habe nicht alles mitgelesen, aber gibt es schon irgendwo ein Issue zu dem Problem?
Du meinst unter GIT - https://github.com/ioBroker/ioBroker.js-controller/issues?
Vermutlich nicht, denn bis vor kurzem war überhaupt nicht klar, wodurch der Fehler überhaupt zustande kommt. Es hätte alles mögliche sein können. Erst in letzter Zeit verdichtet sich die Vermutung das es am js-controller liegen KANN?!?!?
Blos bei Windows, scheinen die ioB Spezis, mehr oder weniger "raus" zu sein. Ausnahme stabilostick.
-
@JB_Sullivan Letztlich ist es ja auch Wurscht, der ioBroker ist ja kein 'Linux'-Programm sondern in nodejs eingebettet. Solange die bevorzugte Plattform mit nodejs läuft...
-
@J-A-R-V-I-S Wäre mir nicht bekannt! In einem anderen Thread wurde das Thema schon einmal angeschnitten und Stabilostick hat einem Nutzer (weiß gerade nicht mehr, wer es war - ich glaube bahnuhr?) wohl auch helfen können. Details zum Lösungsweg gab es aber auch dort leider nicht. Ich habe Stabilostick gebeten, ein paar Angaben dazu zu machen, aber er ist wohl mal wieder "abgetaucht" oder hat schlicht und ergreifend keine Lust mehr auf meine vielen Nachfragen.
PS: Bin jetzt mal eine Weile afk - das reale Leben will so "nebenher" auch noch irgendwie zum Zuge kommen!