NEWS
ioBroker unter Windows installieren (ohne Installer)
-
Genau wie Sigi hat es bei mir mit dem Installer auch geklappt.
Was aber nicht beim Installer funktioniert ist das Einlesen des data-Ordners und die Nachinstallation der fehlenden Instanzen.
Problem vermutlich: multihost
Oder anders: Ich habe es bisher nicht hinbekommen.
-
So, jetzt hab ich es hinbekommen (Thema Multihost).
Was nicht geht:
Kopie des Ordners ..data.
Hier werden die Instanzen nicht nach installiert.Was geht:
Datei im data Ordner: iobroker.json
Und hier ändern:"multihostService": { "enabled": true,
auf false.
siehe auch hier Beitrag von stabilo.. : https://forum.iobroker.net/topic/24916/multihost-slave-zum-master-machen/8Dann den Installer aufrufen und als Grundlage den vorhandenen data Ordner auswählen.
Die Instanzen werden bei mir gerade nach installiert (auf dem Test laptop).
Vermutlich muss ich dann multihost neu einrichten.
Aber dies geht ja schnell.mfg
Dieter -
@AlCalzone sagte in ioBroker unter Windows installieren (ohne Installer):
@P-A-L-A-D-I-N sagte in ioBroker unter Windows installieren (ohne Installer):
Ich finde es echt blöd, daß der js-controller überhaupt ins stable gelangt ist, so kaputt wie der ist!
Beispiel? Bei mir läufts, sogar in einer Vorabversion:
Ich freue mich (ehrlich!) für Dich, daß es bei Dir so gut läuft - aber hier im Thread kannst Du ja lesen, daß das alles andere als die Regel ist... Da das Update des js-controller regelmäßig (!) zum Zerschießen des gesamten ioBroker führt, kann man wohl doch mit Fug und Recht behaupten, daß der Controller ab Version 3 ganz schön "kaputt" ist! Oder, da ich jetzt auch niemandem Unrecht tun will, daß er zumindest in der normalen Windows-Konfiguration, die standardmäßig nach Schema F installiert worden ist (egal ob manuell oder mit Installer), zu erheblichen Problemen führt (womöglich auch durch das Zusammenspiel mit einem anderen Software-Paket des ioBroker, das den entsprechenden Fehler hervorruft).
@sigi234: Das Update-Verfahren für den js-controller, das Du beschreibst, entspricht eins zu eins meiner obigen Anleitung - wo es aber zu den besagten heftigen Problemen führt. Sofern Du auch nur einfach nach Schema F installiert hast, muß der Grund, warum es bei Dir geklappt hat, also an anderer Stelle zu finden sein - möglicherweise bei Deiner (abweichenden) Herangehensweise zum Update von node, möglicherweise aber auch an ganz anderer Stelle. Da ich persönlich leider nicht die (gegebenen oder möglichen) Interdependenzen zwischen dem js-controller und anderen ioBroker-Softwarepaketen kenne, komme ich hier leider nicht weiter.
@all: Weiß jemand mehr über die Zusammenhänge zwischen node und js-controller? Wäre das eine mögliche und plausible Fehlerquelle, die zum Zerschießen des ioBroker und den beschriebenen, ungefragten Löschungen ganzer Ordner führen könnte?
@Stabilostick: Da Du ja bahnuhr beim beschriebenen Problem helfen konntest, wäre es wohl doch mal für die Allgemeinheit interessant, Deinen Lösungsweg zu erfahren! Irgendetwas hast Du ja wohl goldrichtig gemacht, was aber (fast?) kein Anderer so bislang gemacht hat!?
-
So, weitere Erkenntnisse:
js-controller auf 3.1.4 -> klappt
node auf 12.. -> klapptDann versucht den adapter "admin" von 3.6. auf 4.0 mit update button upzudaten.
Nix geht mehr:
admin 8081 nicht mehr erreichbar.
dienst startet nicht.Dann in cmd mit:
npm install iobroker.admin@latest -- production
und
npm install iobroker.js-controller@latest -- productionwieder installiert und es läuft wieder alles.
Fazit:
BUG im update "admin" von 3.6.. auf 4.0....Vielleicht wäre es jetzt mal angesagt, dass man sich (und nicht nur stabilo..) darum kümmert und versucht dies mal nachzuvollziehen.
mfg
Dieter -
@bahnuhr sagte in ioBroker unter Windows installieren (ohne Installer):
versucht dies mal nachzuvollziehen.
Kannst du exakte Schritte posten, wie man von einem frischen System ohne iobroker zu diesem Zustand kommt?
-
@AlCalzone sagte in ioBroker unter Windows installieren (ohne Installer):
@bahnuhr sagte in ioBroker unter Windows installieren (ohne Installer):
versucht dies mal nachzuvollziehen.
Kannst du exakte Schritte posten, wie man von einem frischen System ohne iobroker zu diesem Zustand kommt?
Na klar.
- Data Ordner sichern, z.B. auf desktop
- multihost in iobroker.json geändert auf false (weil ich ja mulihost habe)
- aktuellen Installer von iob homepage genommen
- installiert und als Grundlage data Ordner (auf desktop) nehmen
- wenn alle instanzen nachinstalliert wurden, dann
- node updaten auf 12.. mit
1: Konsole: iobroker stop 2: Sicherung des Ordners: C:\Program Files\iobroker\SmartHome\nodejs auf dem Desktop 3: Download der benötigten Node.js Version unter https://nodejs.org als Archiv nicht als msi Datei 4: Entpacken des Downloads und kopieren den Gesamten Ordners über den vorhandenen C:\Program Files\iobroker\SmartHome\nodejs Ordner. 5: Kopiere aus der Sicherungskopie des Desktops die Datei nodevars.bat in den Ordner C:\Program Files\iobroker\SmartHome\nodejs 6: Konsole: iobroker start
dann js-controller updaten mit
iobroker stop iobroker update iobroker upgrade self iobroker start
Kontrolle ob alles läuft (auch der Dienst).
Bei Host wird 3.1.4 angezeigt.
Bei Info wird node 12.18 angezeigt.
Dienst geht aus und an.
Fazit: alles ok soweit.Dann klick auf Adapter.
Es wird ein update angezeigt von "admin" 3.6... auf 4.0.10 (glaub ich).
Und dies zerschießt alles !!! -
@bahnuhr sagte in ioBroker unter Windows installieren (ohne Installer):
Fazit:
BUG im update "admin" von 3.6.. auf 4.0....Ich wage mal zu behaupten, daß der Admin hier unschuldig ist! Nach dem Aktualisieren des js-controller funktioniert nämlich generell kein Update irgendeines Adapters mehr! Das Problem konnte ich bereits mehrmals reproduzieren und es war hierbei völlig egal, ob es Admin, Zigbee oder von mir aus sogar der Bring Einkaufslisten Adapter war!
Dein Workaround dürfte vermutlich auch nur temporär funktionieren (ebenfalls bereits mehrfach reproduziert). Das Ersetzen der neuen Ordner durch die alte Sicherung funktioniert erfahrungsgemäß nur bis zum nächsten Neustart.
Ich empfehle Dir, hier mal die oben beschriebene Lösung von @stedande mit der Wiederherstellung der gelöschten Ordner aus der händischen Installation auszuprobieren, da diese Lösung wohl dauerhaft zu sein scheint! Im Beitrag vom 6.6., 21:10 Uhr, hat er ein Archiv mit den entsprechenden Dateien zur Verfügung gestellt.
@stefande: Wie sieht es mit den anderen Dateien aus, von denen Du danach noch geschrieben hast? Könntest Du die ebenfalls der Allgemeinheit zur Verfügung stellen, sofern erforderlich?Edit: @bahnuhr: Alternativ besser erst einmal bei js-controller 2.2.9 (als letzte, auch für Windowsnutzer stabile Version) bleiben.
-
Ne, ne,
ich habe doch jetzt den installer probiert und oben beschrieben.
Das hat mit dem ordner "node-windows" nix zu tun.
Denn dieser half, dass der dienst wieder läuft (weil ja in der xml darauf bezug genommen wird).
Aber: ich habe hier den installer !!!@P-A-L-A-D-I-N sagte in ioBroker unter Windows installieren (ohne Installer):
nur bis zum nächsten Neustart.
Bei mir funktioniert alles nach neustart.
-
@bahnuhr sagte in ioBroker unter Windows installieren (ohne Installer):
Data Ordner sichern, z.B. auf desktop
Ist es notwendig, eine bestehende Installation zu nutzen, um das Problem zu reproduzieren oder kann man auch bei Null anfangen? Ohne wäre es sicher einfacher.
Bei bestehender Installation kann es nämlich auch wieder davon abhängig sein, was da drin ist. -
@AlCalzone sagte in ioBroker unter Windows installieren (ohne Installer):
Ohne wäre es sicher einfacher.
Na klar wäre es ohne einfacher.
Aber wenn man 33 Instanzen hat und jede Menge Einstellungen (ping, parser, etc) und dann die Sicherungspfeile nicht vorhanden sind oder nicht funktionieren, dann ist dies "Murx".
Und: issues sind schon seit Monaten erstellt (tschuldigung, musste jetzt sein).
-
Da euch das Problem so wichtig ist, würde ich schon erwarten, dass helfenden Personen die Hilfe so einfach wie möglich gemacht wird.
Mal ganz offen und ehrlich: Mein Produktivsystem läuft auf Linux, sämtliche Updates laufen geschmeidig. Mein Entwicklungssystem läuft auf Windows, manuelle Updates funktionieren und ich scheue mich, da etwas dran zu ändern. Meine begrenzte Freizeit investiere ich da lieber in Z-Wave (weil ich auch was davon habe) als in den Tiefen von npm+Windows stundenlang auf Geisterjagd zu gehen.ioBroker ist open source. Jeder kann sich einbringen und ich wage mal zu unterstellen, dass ein Großteil der Entwickler zumindest oft eigennützig sind. D.h. sie entwickeln und fixen in ihrer Freizeit dort, wo es sie persönlich am weitesten bringt. Muss man vorher erst eine Windows-Installation mit 30 Instanzen aufsetzen, ist die Hemmschwelle zu helfen doch recht hoch (tschuldigung, musste jetzt sein).
Je weniger bewegte Komponenten nötig sind, um das Problem zu reproduzieren, desto schneller kommt man ihm auf die Schliche. Im besten Fall kann man bei einer leeren Installation beginnen. Wenn ich jetzt deinen data-Ordner benötige, macht es das sicherlich schwieriger.
Daher nochmal: Kann man das Problem noch weiter runterbrechen? Z.B. kann ich ein Image nehmen, einen Adapter installieren und dann auf dieser Basis deine Schritte durchgehen (also mit Data-Ordner aus dieser neuen Installation) und komme zum gleichen Ergebnis?
-
@bahnuhr:
Um es nochmal zu konkretisieren: Ich denke, das Problem liegt beim js-controller, nicht direkt bei node. Auch ist es hier völlig Jacke wie Hose, ob man zuvor händisch oder mithilfe des Installer installiert hat!
Bei mir fing die Misere immer ganz genau in dem Moment an, in dem ich erstmals versucht habe, den js-controller auf v3.x zu aktualisieren. Alle anderen Adapter-Upgrades liefen problemlos durch und das System hat auch sämtliche Neustarts überstanden - bis eben der Versuch unternommen wurde, den js-controller zu aktualisieren...@AlCalzone:
Das Problem läßt sich, zumindest meiner Erfahrung nach, mit jedem System, völlig unabhängig von den installierten Adaptern und Instanzen, reproduzieren! Auch ist es völlig gleich, wie die Installation durchgeführt worden ist (händisch oder Installer).
Probier, wenn Du Zeit und Lust hast, einfach mal eine Installationsmethode aus, spiele ein bißchen mit den Adapter-Installationen herum, mach Neustarts etc. pp., ohne dabei aber den js-controller "anzufassen". Es wird mutmaßlich alles reibungslos klappen. Dann versuchst Du mal, den js-controller auf eine 3er Version hochzustufen (ich habe das immer über die Oberfläche des ioBroker statt über die Konsole gemacht) - und ab dann (in aller Regel spätestens nach dem ersten Neustart) hast Du den Salat!! -
Ich habe mal eine Frage zu der nodejs installation. Wenn man nodejs auf einem Windows System händisch installiert wird dieses ja im Programme Ordner abgelegt und ioB bekommt nicht mit, das auf Betriebssystem Ebene eine neuere Version liegt, als im ioB Ordner nodejs.
Wie installiert man nodejs denn korrekt, das auch ioBroker weiß, das es das neue nodejs ist?
-
@JB_Sullivan
In meiner Anleitung (Post 1) empfehle ich ja (inkl. Angabe des Links und Installationsanweisungen), das Node-Paket mithilfe eines Installer-Pakets (msi) zu installieren. Dadurch wird Node im System (Registry) eingetragen, sodaß eigentlich jedes Programm, das Node benötigt, dementsprechend auch "wissen" sollte, daß Node (in entsprechender Version) installiert ist.
Da der ioBroker problemlos läuft (solange man das "teuflische" js-controller Update nicht macht ), "weiß" er das wohl auch und greift dementsprechend auf die richtigen Dateien im richtigen Ordner zu! -
@P-A-L-A-D-I-N
Genau das ist nämlich bei mir nicht der Fall. nodejs ist als Version 12.18 installiert. ioB, behauptet aber immer noch, das es auf 10.17 unterwegs ist. -
@JB_Sullivan sagte in ioBroker unter Windows installieren (ohne Installer):
@P-A-L-A-D-I-N
Genau das ist nämlich bei mir nicht der Fall. nodejs ist als Version 12.18 installiert. ioB, behauptet aber immer noch, das es auf 10.17 unterwegs ist.Dies hatte bei mir geklappt.
1: Konsole: iobroker stop 2: Sicherung des Ordners: C:\Program Files\iobroker\SmartHome\nodejs auf dem Desktop 3: Download der benötigten Node.js Version unter https://nodejs.org als Archiv nicht als msi Datei 4: Entpacken des Downloads und kopieren den Gesamten Ordners über den vorhandenen C:\Program Files\iobroker\SmartHome\nodejs Ordner. 5: Kopiere aus der Sicherungskopie des Desktops die Datei nodevars.bat in den Ordner C:\Program Files\iobroker\SmartHome\nodejs 6: Konsole: iobroker start
-
@bahnuhr
Wenn ich es so mache wie von dir beschrieben, kommt bei Start des Windows Dienstes das hier -
@JB_Sullivan sagte in ioBroker unter Windows installieren (ohne Installer):
@bahnuhr
Wenn ich es so mache wie von dir beschrieben, kommt bei Start des Windows Dienstes das hierJetzt schau mal bitte ob es in deinem node_modules Ordner den Ordner node-windows gibt, und wenn nicht dann kopiere den rein. Danach sollte der Dienst wieder starten.
-
@stefande Alles Gut - SOrry war mein Fehler. Habe das Falsche Verzeichniss erwischt -node12.18 ist jetzt installiert.
-
Nur mal so zur Info, ich bastel zur Zeit an einem Workaround, wie man unter Windows ioBroker doch noch gefahrlos installiert bekommt - und zwar über den Installer.
Folgendes hat bislang funktioniert:
- Installation via Installer Version 2.1.0.b
- sofort Windows ioB Dienst stoppen
- nodesjs Verzeichnis gemäß dieser Anleitung "austauschen" auf aktuell 12.18
1: Konsole: iobroker stop 2: Sicherung des Ordners: C:\Program Files\iobroker\SmartHome\nodejs auf dem Desktop 3: Download der benötigten Node.js Version unter https://nodejs.org als Archiv nicht als msi Datei 4: Entpacken des Downloads und kopieren den Gesamten Ordners über den vorhandenen C:\Program Files\iobroker\SmartHome\nodejs Ordner. 5: Kopiere aus der Sicherungskopie des Desktops die Datei nodevars.bat in den Ordner C:\Program Files\iobroker\SmartHome\nodejs 6: Konsole: iobroker start
- Windows ioB Dienst starten
- ioB Admin aufrufen, nodejs kontrollieren (sollte 12.18 sein)
- aktuell sind nur die drei Adapter Admin, Discovery device und Info installiert
- umstellen auf latest.
-ioBroker Dienst stoppen
-ioBroker Eingabeaufforderung starten und js-controler nach bekannten Muster (update upgrade self) aktualsieren auf derzeit 3.1.5 - ioBroker Dienst wieder starten
- Admin aufrufen und die drei Adapter aktualisieren.
ALLE DREI ADAPTER LIEßEN SICH OHNE DAS BEKANNT node_modules LÖSCH PHÄNOMEN AKTUALISIEREN !!! - und das mit js-controller 3.1.5 !!!
...... to be continued