NEWS
IOBroker Windows Installation bleibt stehen
-
Kann ich bestätigen, bei mir auch. Wollte ioBroker zum ersten Mal ausprobieren. Hab es auf zwei Win7 x64 Rechnern versucht, bleibt immer an der gleichen Stelle mit 100% CPU-Last hängen. Im Taskmanager ist zu sehen, daß die CPU-Last von node.exe verursacht wird.
Weiß echt nicht weiter, vielleicht hat ja einer ne´Lösung für das Problem….?
Gruß in´s Forum
der "neue" Tom
4826_npm.jpg -
Hallo !
Tolles Projekt, tolles Forum. Ich beschäftige mich erst kurz mit IoBroker, bin ziemlich
begeistert. Hab es im Wesentlichen im Einsatz, um meine Homematic Komponenten
mit Alexa zu steuern. Funktioniert auf Raspberry gut. Nun wollte ich die Installation
auf meinem Windows Server 2016 Essentials ausprobieren. Gleiches Phänomen wie
hier beschrieben. Sowohl mit dem latest Installer als auch mit manueller Installation.
IoBroker scheint installiert zu werden, Installation hängt dann aber an besagter Stelle.
Aus zweiten cmd Fenster lässt sich IoBroker starten, funktioniert auch.
Leider ist kein Dienst installiert. Für jede Instanz öffnet sich ein Terminalfenster.
Irgendjemand eine Lösung ?
Grüße Heiko
-
Hallo nochmal !
Also ich hab mir jetzt geholfen, in dem ich mir selbst mit NSSM
den Dienst erschaffen habe. Bei mir funktioniert damit jetzt alles.
Voraussetzung ist natürlich, dass die eigentliche ioBroker Installation durchgelaufen ist
(wie oben schon beschrieben - der Haufen Fehlermeldungen bzgl. Python etc kamen bei mir auch,
ebenfalls hing die Installation an der oben genannten Zeile.
ABER: In einem anderen CMD Fenster ließ sich durch "iobroker start" alles starten.
In groben Schritten meine Lösung:
-
Die nssm.exe runterladen, ich habe sie einfach in das C:\iobroker Verzeichnis gespeichert
-
Eine Batch Datei (zB iobroker_start.bat) im gleichen Verzeichnis erstellt mit dem Inhalt
cd:\iobroker
node c:\iobroker\node_modules\iobroker.js-controller\iobroker.js start
-
Aus einem cmd Fenster im Verzeichnis c:\iobroker\ NSSM gestartet mit "nssm install iobroker"
-
In dem Paramrterfenster als zu startende Anwendung (path:) die eben erstellte Batch Datei ausgewählt
-
In der Registerkarte "Exit Actions" noch "No Action" ausgewählt, weil der Start des Dienstes sonst mit einer Fehlermeldung endet
-
Und dann mit click auf "install Service" (oder so ähnlich) den Service erstellt
Danach ist der Service sichtbar und lässt sich starten
ich betrachte das mal als Workaround bis einer der Profis hier die Install Routine und die Ursachen
des Hängenbleibens näher analysiert…..
Grüße
Heiko
-
-
Na das nenn ich mal ne Lösung!
Vielen Dank. Hat super geklappt
Grüße
-
Tach zusammen.
Schuld daran, dass das Script an der Stelle stehen bleibt, ist ein falsch gewählter Syntax für das gewählte Zielverzeichniss.
Es darf <u>nicht</u> _C:\ZEILVERZEICHNIS_ heissen. ( Siehe weiter oben im orig. Script. )
Es müsste npm install https://wasauchímmer.tar –production --prefix "C:/ZEILVERZEICHNISS" heißen um fehlerfrei zu laufen.
Leide bin ich nicht in der Lage, das Installationsscript zu fixen …
-
Wäre toll wenn du den Bug in Trello reporten würdest, damit sich jemand darum kümmert:
https://trello.com/b/q0SZKdfW/iobroker-whiteboard
beste Grüße
-
Besser ein Issue bei Github eröffnen - da wird auf jeden Fall jemand sich das ansehen.
==> https://github.com/ioBroker/ioBroker/issues
Gruß,
Eric
Von unterwegs getippert
-
Es darf <u>nicht</u> _C:\ZEILVERZEICHNIS_ heissen. ( Siehe weiter oben im orig. Script. )
Es müsste npm install https://wasauchímmer.tar –production --prefix "C:/ZEILVERZEICHNISS" heißen um fehlerfrei zu laufen.
Leide bin ich nicht in der Lage, das Installationsscript zu fixen … `
Man muss also eine "Nicht-Windows-Notation" bei dem Pfad nehmen? Wirklich? Selbst probiert oder irgendwo gefunden? Also das zu ändern geht einfach … ich kann es dann als ioBroker-Paket 1.0.5 releasen und jemand muss es zeitnah testen ...
-
Ja, mach mal. Ich denke ich finde eine VM wo ich das mal testen kann…
Kann schon sein dass man wirklich den "Nicht-Windows-Slash" als Pfadtrenner verwenden muss da es ja im npm ausgeführt wird. In Javascript-Scripten muss man auch, trotz ioBroker auf Windows, die Linux-Slashes verwenden - wenn ich mich gerade richtig erinnere...
-
Ok melde mich. Ich schaue gerade das ich vllt das Paket mit offiziellen ci Tests ausstatten kann … vllt kann Ich es so besser vorab testen. Oder sehen ob es Auswirkungen hat. Bin schon dran. Melde mich.
-
Ich könnte mir auch fix ein paar VMs mit unterschiedlichen Windows Versionen zum testen erstellen.
-
Hallo Zusammen,
Ok melde mich. Ich schaue gerade das ich vllt das Paket mit offiziellen ci Tests ausstatten kann … vllt kann Ich es so besser vorab testen. Oder sehen ob es Auswirkungen hat. Bin schon dran. Melde mich. `
Als Windowsentwickler hoffe ich, Dir hier ein wenig helfen zu können.
Je nach Version von Windows muss sich der Installer dynamisch anpassen, ebenso sind seit einigen Windows Updates die "Account Policies" zu beachten (Logon as Batch and Logon as Service), ebenso spuckt meistens auch die UAC und LUA dazwischen, welche trotz Abschaltung in der GUI noch im Hintergrund aktiv bleibt und erst via einem Registrypatch abgeschaltet werden kann.
Danach das übliche Ab- und Anmelden um den Kontext zu ziehen.
Je nach lokler Einstellung kannst Du als Anwender mit Adminrechten oder als angmeldeter Admin in %Programfiles% schreiben oder auch leider nicht…. das gleiche gilt für die Wurzel von C:.
Ich weiss nicht welchen Installer Du verwendest, manche (Installschield, Wix) brauchen z.b. C:\iobroker anstatt C:\iobroker bei der Verpfadung....
Ist etwas tricky, denke Du brauchst eine Abfrage der Windows Version zum Zeitpunkt der Installation und einige kleine Testscripts ob bestimmte Aktionen erlaubt sind im aktuellen Kontext, ebenso sollte der Service welcher ioBroker startet in einem Kontext laufen, welcher auch das Netzwerk nutzen darf.
Herzliche Grüsse
Equilora (aka Harald)
-
Oder direkt im Installer ein Benutzerkonto angeben lassen in dessen Kontext ioBroker gestartet werden soll.
-
Hallo Zusammen,
Oder direkt im Installer ein Benutzerkonto angeben lassen in dessen Kontext ioBroker gestartet werden soll. `
Jop da hast recht…. allerdings wenn dieses Konto niemals lokal am Windows System angemeldet war, wird jedesmal das Profil basierend auf .DefaultUser generiert und am Ende wegeworfen, deswegen sollte für dieses technische Konto unter "Computer Configuration | Administrative Templates | System | UserProfiles: Do not forcefully unload the user registry at user logoff = Enabled" aktiviert sein.
Microsoft hat vieles im Bereich Sicherheit angepasst und passt weiter an, wir selbst rennen nach jedem Patch den Änderungen hinterher
Und nach der Installation kotzt die Windows Firewall
Herzliche Grüsse
Equilora (aka Harald)
-
Aaaaalso,
ich habe mal den Abend damit verbracht das ioBroker-paket mit Testing der Installs für alle relevanten OS (Linux, macOS und Windows) zu erweitern.
Damit habe ich das Problem auf Windows direkt nachvollziehen können bei den tests und auch den Fix.
Bereite den 1.0.5 vor und melde mich
-
ioBroker 1.0.5 mit Windows fix is auf npm verfügbar, Bitte testen!
-
Jetzt muss ich mal ganz blöd fragen :oops:
Da das ja jetzt nicht die übliche Windows-Installer.exe ist… was muss ich denn starten "install.js" oder "serviceIoBroker.bat" oder beides oder bin ich völlig auf dem falschen Dampfer...???
-
Puh … es ist der weg ein Verzeichnis anzulegen und dort nur „npm install iobroker —production“ auszuführen. Bzw wegen Kommando schau mal auf der Webseite
-
Commando: npm install iobroker –unsafe-perm
Erst natürlich in das Verzeichnis wechseln!
Send from mobile device
Das schöne ios hat Auto Korrektur zum k****
Wer Schreibfehler findet darf sie behalten oder auf eBay verkaufen, mindest Umsatz 10% für die community
-
Hm - klar, so geht's natürlich auch :oops: Allerdings - ich dachte wir wollten eben den "Windows-Installer" testen…???