NEWS
Test ioBroker unter Windows installieren - 2023 Edition
-
@gaspode
Hatte inzwischen zum obigen Posts noch einige Edits mit npm ls aus verschiedenen Verzeichnissen gepostet. Vielleicht hilft das.Was soll ich umbenennen? Das Verzeichnis
C:\ioBroker\node_modules\npm
?
-
@klassisch said in Test ioBroker unter Windows installieren - 2023 Edition:
Was soll ich umbenennen?
Ja, npm in npm_xxx oder so.
-
@gaspode
Irgedwie half-way. Die 6er taucht jetzt nicht mehr auf, dafür wird irgendwo noch auf das umbenannte Verzeichnis verwiesenC:\ioBroker>iob fix Windows installation starting... (fixing = true) NPM version: 10.2.3 node:internal/modules/cjs/loader:1137 throw err; ^ Error: Cannot find module 'C:\ioBroker\node_modules\npm\bin\npm-cli.js' at Module._resolveFilename (node:internal/modules/cjs/loader:1134:15) at Module._load (node:internal/modules/cjs/loader:975:27) at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:128:12) at node:internal/main/run_main_module:28:49 { code: 'MODULE_NOT_FOUND', requireStack: [] } Node.js v18.19.0 node:child_process:965 throw err; ^ Error: Command failed: npm x --yes @iobroker/jsonltool@latest at checkExecSyncError (node:child_process:890:11) at execSync (node:child_process:962:15) at Object.<anonymous> (C:\Users\JS\AppData\Local\npm-cache\_npx\19d197aa1f8fa98c\node_modules\@iobroker\fix\lib-npx\install.js:71:17) at Module._compile (node:internal/modules/cjs/loader:1356:14) at Module._extensions..js (node:internal/modules/cjs/loader:1414:10) at Module.load (node:internal/modules/cjs/loader:1197:32) at Module._load (node:internal/modules/cjs/loader:1013:12) at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:128:12) at node:internal/main/run_main_module:28:49 { status: 1, signal: null, output: [ null, null, null ], pid: 2672, stdout: null, stderr: null } Node.js v18.19.0 C:\ioBroker>
Ich boote jetzt mal den Rechner neu
-
@klassisch said in Test ioBroker unter Windows installieren - 2023 Edition:
Die 6er taucht jetzt nicht mehr auf, dafür wird irgendwo noch auf das umbenannte Verzeichnis verwiesen
Deshalb halte ich ja die Variante "npm uninstall npm" für erfolgsversprechender. Evtl. wird das damit glatt gezogen.
-
@gaspode sagte in Test ioBroker unter Windows installieren - 2023 Edition:
Reboot hat nicht geholfen
Aus welchem Verzeichnis heraus soll ichnpm uninstall npm
starten?
Und muß ich danach das "richtige" npm nochmals installieren?
Ich will halt ioBroker lauffähig halten. Der steuert bei mir auch die Wohungsbeleuchtung und vieles anderes mehr. Also nicht mehr nur nice to have. -
@klassisch said in Test ioBroker unter Windows installieren - 2023 Edition:
Und muß ich danach das "richtige" npm nochmals installieren?
Das "npm uninstall npm" in c:\ioBroker ausführen.
Es muss danach nichts installiert werden, denn npm wird normalerweise nicht als package installiert, schon gar nicht lokal. Ich habe keine Ahnung, wie das bei dir da hin gekommen sein könnte. Das Datum ist 19.11.2022. Hast du evtl. mal ein node_modules Verzeichnis selbst kopiert oder so?@klassisch said in Test ioBroker unter Windows installieren - 2023 Edition:
Ich will halt ioBroker lauffähig halten. Der steuert bei mir auch die Wohungsbeleuchtung und vieles anderes mehr. Also nicht mehr nur nice to have.
Ja, das kann ich gut verstehen. Ich kann halt auch nicht garantieren, dass nix kaputt geht, weil ich die Hintergründe bei dir nicht kenne. Ich probiere die Schritte, die ich empfehle jedenfalls soweit möglich immer auf einem meiner Testsysteme aus, soweit das geht.
-
Jetzt taucht plötzlich die 6er wieder auf
C:\ioBroker>iob fix Windows installation starting... (fixing = true) NPM version: 10.2.3 Usage: npm <command> where <command> is one of: access, adduser, audit, bin, bugs, c, cache, ci, cit, clean-install, clean-install-test, completion, config, create, ddp, dedupe, deprecate, dist-tag, docs, doctor, edit, explore, fund, get, help, help-search, hook, i, init, install, install-ci-test, install-test, it, link, list, ln, login, logout, ls, org, outdated, owner, pack, ping, prefix, profile, prune, publish, rb, rebuild, repo, restart, root, run, run-script, s, se, search, set, shrinkwrap, star, stars, start, stop, t, team, test, token, tst, un, uninstall, unpublish, unstar, up, update, v, version, view, whoami npm <command> -h quick help on <command> npm -l display full usage info npm help <term> search for help on <term> npm help npm involved overview Specify configs in the ini-formatted file: C:\Users\JS\.npmrc or on the command line via: npm <command> --key value Config info can be viewed via: npm help config npm@6.14.17 C:\ioBroker\node_modules\npm node:child_process:965 throw err; ^ Error: Command failed: npm x --yes @iobroker/jsonltool@latest at checkExecSyncError (node:child_process:890:11) at execSync (node:child_process:962:15) at Object.<anonymous> (C:\Users\JS\AppData\Local\npm-cache\_npx\19d197aa1f8fa98c\node_modules\@iobroker\fix\lib-npx\install.js:71:17) at Module._compile (node:internal/modules/cjs/loader:1356:14) at Module._extensions..js (node:internal/modules/cjs/loader:1414:10) at Module.load (node:internal/modules/cjs/loader:1197:32) at Module._load (node:internal/modules/cjs/loader:1013:12) at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:128:12) at node:internal/main/run_main_module:28:49 { status: 1, signal: null, output: [ null, null, null ], pid: 5424, stdout: null, stderr: null } Node.js v18.19.0 C:\ioBroker>npm -v 10.2.3 C:\ioBroker>
Ich erinnere mich nicht wissentlich und willentlich npm installiert zu haben. Kann das aber nicht ausschließen. Wie gesagt, das System ist im Grunde recht alt und hat etliche Migrationen hinter sich.
-
@klassisch said in Test ioBroker unter Windows installieren - 2023 Edition:
Jetzt taucht plötzlich die 6er wieder auf
Was hast du genau gemacht? npm Ordner in node_modules wieder umbenannt und dann in c:\iobroker "npm uninstall npm" ausgeführt? Hast du davon ein Log?
-
@gaspode sagte in Test ioBroker unter Windows installieren - 2023 Edition:
Was hast du genau gemacht? npm Ordner in node_modules wieder umbenannt und dann in c:\iobroker "npm uninstall npm" ausgeführt? Hast du davon ein Log?
Ja, das habe ich wohl verkorkst
Das Rückumbenennen hatte ich leider nicht gemacht. War dumm und wurde mir recht schnell klar.
Aber nach dem npm uninstall npm war auch der umbenannte Ordner weg.Logfile: Hat npm ein eigenes logfile?
-
@klassisch said in Test ioBroker unter Windows installieren - 2023 Edition:
Logfile: Hat npm ein eigenes logfile?
Nur was auf der Konsole ausgespuckt wird, wenn man es nicht umleitet, soweit ich weiß.
-
@gaspode Den Konsolenoutput hatte ich hier rein kopiert. Nach iob start wird die Konsole ja gelöscht.
Im ioBroker log habe ich nichts passendes gefunden.Sorry, habe es "screwed up"
-
@klassisch said in Test ioBroker unter Windows installieren - 2023 Edition:
Sorry, habe es "screwed up"
Kein Problem. Also das Verzeichnis node_modules\npm ist jetzt weg und trotzdem steht im Log
npm@6.14.17 C:\ioBroker\node_modules\npm
Das kann eigentlich gar nicht sein. Hmmm.
-
@gaspode
Das von mir in
\iobroker\node_modules\npm_delete_candidate
umbenannte Verzeichnis, welches so aussahist jetzt weg
Dafür gibt es jetzt wieder ein npm, welches heute frisch angelegt wurde - aber nicht von mir
Warum auch immer. Das npm System ist eben intelligenter als ich.
-
@klassisch said in Test ioBroker unter Windows installieren - 2023 Edition:
Dafür gibt es jetzt wieder ein npm, welches heute frisch angelegt wurde - aber nicht von mir
Das ist ja erstaunlich. Wann kam das denn rein? Kannst du nochmal "npm uninstall npm" machen und gucken, ob das denn erst mal weg ist?
-
@gaspode sagte in Test ioBroker unter Windows installieren - 2023 Edition:
npm uninstall npm
Klar
C:\ioBroker>npm uninstall npm up to date, audited 2461 packages in 34s 192 packages are looking for funding run `npm fund` for details 124 vulnerabilities (4 low, 64 moderate, 44 high, 12 critical) To address issues that do not require attention, run: npm audit fix To address all issues possible (including breaking changes), run: npm audit fix --force Some issues need review, and may require choosing a different dependency. Run `npm audit` for details. C:\ioBroker>
Das Ding ist persistent oder resistent:
-
@klassisch
Die Frage ist, wer das (wieder) angelegt hat.
Du könntest es jetzt nochmal weg putzen und dann den Fixer nochmal starten. Ob uns das aber unterm Strich weiter bringt ...
Auf jeden Fall Danke für deine Geduld. -
@gaspode sagte in Test ioBroker unter Windows installieren - 2023 Edition:
@klassisch
Die Frage ist, wer das (wieder) angelegt hat.Ich nicht. Da scheint npm einen intelligenten Reparaturmechanismus zu haben, der dann leider auch den Schrott, den man eigentlich loswerden will, repariert
Du könntest es jetzt nochmal weg putzen
Einfach das Verzeichnis
\iobroker\node_modules\npm
löschen?
Ob uns das aber unterm Strich weiter bringt ...
Solange es nichts zerstört
und dann den Fixer nochmal starten.
Kein Problem
Auf jeden Fall Danke für deine Geduld.
Dito. Ist ja ein unerwünschtes Relikt meiner Installations- Update- und Gebrauchsgeschichte.
-
@klassisch said in Test ioBroker unter Windows installieren - 2023 Edition:
Einfach das Verzeichnis
\iobroker\node_modules\npm
löschen?Ja, das hab ich gemeint.
@klassisch said in Test ioBroker unter Windows installieren - 2023 Edition:
Solange es nichts zerstört
Eine Garantie gibt es halt nicht, aber das dürfte nix schaden.
Wenn es beim Fix wieder tatsächlich auch diesmal wieder installiert wird, muss ich mir was einfallen lassen, wie wir das irgendwie tracken können. Ich bin demnächst aber mal für ne Weile busy.
-
@gaspode
Gelöscht:
iob fix
C:\ioBroker>iob fix Windows installation starting... (fixing = true) NPM version: 10.2.3 node:internal/modules/cjs/loader:1137 throw err; ^ Error: Cannot find module 'C:\ioBroker\node_modules\npm\bin\npm-cli.js' at Module._resolveFilename (node:internal/modules/cjs/loader:1134:15) at Module._load (node:internal/modules/cjs/loader:975:27) at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:128:12) at node:internal/main/run_main_module:28:49 { code: 'MODULE_NOT_FOUND', requireStack: [] } Node.js v18.19.0 node:child_process:965 throw err; ^ Error: Command failed: npm x --yes @iobroker/jsonltool@latest at checkExecSyncError (node:child_process:890:11) at execSync (node:child_process:962:15) at Object.<anonymous> (C:\Users\JS\AppData\Local\npm-cache\_npx\19d197aa1f8fa98c\node_modules\@iobroker\fix\lib-npx\install.js:71:17) at Module._compile (node:internal/modules/cjs/loader:1356:14) at Module._extensions..js (node:internal/modules/cjs/loader:1414:10) at Module.load (node:internal/modules/cjs/loader:1197:32) at Module._load (node:internal/modules/cjs/loader:1013:12) at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:128:12) at node:internal/main/run_main_module:28:49 { status: 1, signal: null, output: [ null, null, null ], pid: 13628, stdout: null, stderr: null } Node.js v18.19.0 C:\ioBroker>
Immer noch weg
iob start
immer noch weg.
Vielleicht kommt es bei nächsten reboot? Wir werden sehen.Hat ja keine Eile. ioBroker läuft ja stabil bei mir.
-
Aus gegebenen Anlass hätte ich eine Frage.
Die Tage gab es ein Update des Adapter "device-watcher". Irgend etwas wurde dort "falsch" gemacht, was nahezu den gesamten ioBroker zum erliegen brachte (CPU / RAM Ausnutzung = 100%). Damit war ioBroker fast nicht mehr bedienbar (z.B. Instanzen stoppen) . Auch eine korrigierte Adapter Version brauchte Stunden um über GIT eingespielt zu werden.
Unter Windows sieht man ja nun im Task Manager alle laufenden NODE Prozesse. Ich gehe davon aus, das jeder Node Prozess, ein laufender Adapter ist. Leider heißen alle Prozesse NODE. Man kann also über den Task Manager nicht gezielt NODE Prozesse (= Adapter) abbrechen oder stoppen.
Ist das etwas Windows spezifisches, was man ggf. mit der ioBroker Installation über den WIN Installer lösen könnte? Soll heißen, könnte man jedem Node Prozess in Windows ggf. den Adapter Namen anhängen?
Somit könnte man in solchen Ausnahme Situationen wie oben beschrieben, eine Adapter Instanz ggf. auch gezielt über den Windows Task Manager abbrechen / stoppen.
Ist diese Idee völliger Bullshit oder Wert, ggf. einmal darüber nachzudenken?