NEWS
NPM Fehler
-
pi@IOBroker:/ $ iobroker stop pi@IOBroker:/ $ iobroker fix library: loaded Library version=2022-06-15 ========================================================================== Welcome to the ioBroker installation fixer! Script version: 2022-06-03 You might need to enter your password a couple of times. ========================================================================== ========================================================================== Installing prerequisites (1/3) ========================================================================== Hit:1 http://phoscon.de/apt/deconz buster InRelease Hit:2 http://archive.raspberrypi.org/debian buster InRelease Hit:3 http://raspbian.raspberrypi.org/raspbian buster InRelease Hit:4 https://deb.nodesource.com/node_16.x buster InRelease Reading package lists... Done Installed gcc-c++ ========================================================================== Checking ioBroker user and directory permissions (2/3) ========================================================================== Created /etc/sudoers.d/iobroker Fixing directory permissions... ========================================================================== Checking autostart (3/3) ========================================================================== Enabling autostart... Autostart enabled! ========================================================================== Your installation was fixed successfully Run iobroker start to start ioBroker again! ========================================================================== pi@IOBroker:/ $ iobroker start pi@IOBroker:/ $ cd /opt/iobroker pi@IOBroker:/opt/iobroker $ sudo -u iobroker which npm /usr/bin/npm pi@IOBroker:/opt/iobroker $ which npm /usr/bin/npm pi@IOBroker:/opt/iobroker $ cd ~ pi@IOBroker:~ $ which npm /usr/bin/npm
-
@homoran sagte in NPM Fehler:
welche GUI?
Das sieht mir nach dieser Meldung aus: https://github.com/ioBroker/ioBroker.js-controller/issues/1895
Kommt dann, wenn die npm Version nicht ermittelt werden konnte.
-
vielleicht hilft das hier etwas weiter...
pi@IOBroker:/opt/iobroker $ npm rebuild pi@IOBroker:/opt/iobroker $ sudo -H npm rebuild npm ERR! code 1 npm ERR! path /opt/iobroker/node_modules/iobroker.js-controller npm ERR! command failed npm ERR! command sh -c node lib/preinstallCheck.js npm ERR! NPM version: npm ERR! /opt/iobroker/node_modules/iobroker.js-controller/lib/preinstallCheck.js:111 npm ERR! if (v1.major > v2.major) { npm ERR! ^ npm ERR! npm ERR! TypeError: Cannot read properties of null (reading 'major') npm ERR! at gt (/opt/iobroker/node_modules/iobroker.js-controller/lib/preinstallCheck.js:111:12) npm ERR! at gte (/opt/iobroker/node_modules/iobroker.js-controller/lib/preinstallCheck.js:191:12) npm ERR! at /opt/iobroker/node_modules/iobroker.js-controller/lib/preinstallCheck.js:40:29 npm ERR! at ChildProcess.exithandler (node:child_process:406:5) npm ERR! at ChildProcess.emit (node:events:527:28) npm ERR! at maybeClose (node:internal/child_process:1092:16) npm ERR! at Socket.<anonymous> (node:internal/child_process:451:11) npm ERR! at Socket.emit (node:events:527:28) npm ERR! at Pipe.<anonymous> (node:net:709:12) npm ERR! A complete log of this run can be found in: npm ERR! /root/.npm/_logs/2022-06-20T20_38_06_117Z-debug-0.log pi@IOBroker $ sudo less /root/.npm/_logs/2022-06-20T20_38_06_117Z-debug-0.log 28 verbose logfile /root/.npm/_logs/2022-06-20T20_38_06_117Z-debug-0.log 29 timing npm:load:logFile Completed in 14ms 30 timing npm:load:timers Completed in 0ms 31 timing npm:load:configScope Completed in 0ms 32 timing npm:load Completed in 79ms 33 timing arborist:ctor Completed in 2ms 34 silly logfile done cleaning log files 35 timing build:queue Completed in 184ms 36 info run iobroker.js-controller@4.0.23 preinstall node_modules/iobroker.js-controller node lib/preinstallCheck.js 37 info run iobroker.js-controller@4.0.23 preinstall { code: 1, signal: null } 38 timing command:rebuild Completed in 3501ms 39 verbose stack Error: command failed 39 verbose stack at ChildProcess.<anonymous> (/usr/lib/node_modules/npm/node_modules/@npmcli/promise-spawn/lib/index.js:63:27) 39 verbose stack at ChildProcess.emit (node:events:527:28) 39 verbose stack at maybeClose (node:internal/child_process:1092:16) 39 verbose stack at Process.ChildProcess._handle.onexit (node:internal/child_process:302:5) 40 verbose pkgid iobroker.js-controller@4.0.23 41 verbose cwd /opt/iobroker 42 verbose Linux 5.10.103-v7l+ 43 verbose node v16.15.1 44 verbose npm v8.12.2 45 error code 1 46 error path /opt/iobroker/node_modules/iobroker.js-controller 47 error command failed 48 error command sh -c node lib/preinstallCheck.js 49 error NPM version: 50 error /opt/iobroker/node_modules/iobroker.js-controller/lib/preinstallCheck.js:111 50 error if (v1.major > v2.major) { 50 error ^ 50 error 50 error TypeError: Cannot read properties of null (reading 'major') 50 error at gt (/opt/iobroker/node_modules/iobroker.js-controller/lib/preinstallCheck.js:111:12) 50 error at gte (/opt/iobroker/node_modules/iobroker.js-controller/lib/preinstallCheck.js:191:12) 50 error at /opt/iobroker/node_modules/iobroker.js-controller/lib/preinstallCheck.js:40:29 50 error at ChildProcess.exithandler (node:child_process:406:5) 50 error at ChildProcess.emit (node:events:527:28) 50 error at maybeClose (node:internal/child_process:1092:16) 50 error at Socket.<anonymous> (node:internal/child_process:451:11) 50 error at Socket.emit (node:events:527:28) 50 error at Pipe.<anonymous> (node:net:709:12) 51 verbose exit 1 52 timing npm Completed in 3764ms 53 verbose unfinished npm timer build 1655757488213 54 verbose unfinished npm timer build:deps 1655757488214 55 verbose unfinished npm timer build:run:preinstall 1655757488400 56 verbose unfinished npm timer build:run:preinstall:node_modules/iobroker.js-controller 1655757488401 57 verbose code 1 58 error A complete log of this run can be found in: 58 error /root/.npm/_logs/2022-06-20T20_38_06_117Z-debug-0.log
-
Eigentlich sollte das jetzt in beiden Verzeichnissen komplett durchlaufen:
cd /opt/iobroker uname -m && which nodejs node npm && nodejs -v && node -v && npm -v && whoami && pwd && sudo apt update &> /dev/null && sudo apt update && apt policy nodejs cd ~ uname -m && which nodejs node npm && nodejs -v && node -v && npm -v && whoami && pwd && sudo apt update &> /dev/null && sudo apt update && apt policy nodejs
-
-
pi@IOBroker:~ $ cd /opt/iobroker pi@IOBroker:/opt/iobroker $ uname -m && which nodejs node npm && nodejs -v && node -v && npm -v && whoami && pwd && sudo apt update &> /dev/null && sudo apt update && apt policy nodejs armv7l /usr/bin/nodejs /usr/bin/node /usr/bin/npm v16.15.1 v16.15.1 pi@IOBroker:/opt/iobroker $ cd ~ pi@IOBroker:~ $ uname -m && which nodejs node npm && nodejs -v && node -v && npm -v && whoami && pwd && sudo apt update &> /dev/null && sudo apt update && apt policy nodejs armv7l /usr/bin/nodejs /usr/bin/node /usr/bin/npm v16.15.1 v16.15.1 8.12.2 pi /home/pi Hit:1 http://phoscon.de/apt/deconz buster InRelease Hit:2 http://raspbian.raspberrypi.org/raspbian buster InRelease Hit:3 http://archive.raspberrypi.org/debian buster InRelease Hit:4 https://deb.nodesource.com/node_16.x buster InRelease Reading package lists... Done Building dependency tree Reading state information... Done 15 packages can be upgraded. Run 'apt list --upgradable' to see them. nodejs: Installed: 16.15.1-deb-1nodesource1 Candidate: 16.15.1-deb-1nodesource1 Version table: *** 16.15.1-deb-1nodesource1 500 500 https://deb.nodesource.com/node_16.x buster/main armhf Packages 100 /var/lib/dpkg/status 10.24.0~dfsg-1~deb10u1 500 500 http://raspbian.raspberrypi.org/raspbian buster/main armhf Packages
-
@jokersmiler sagte in NPM Fehler:
error /root/.npm/_logs/2022-06-20T20_38_06_117Z-debug-0.log
-
@homoran
Das passt irgendwie auch nicht. Gerade weil zigbee testweise mal gelöscht wurde (und in der GUI-Übersicht nicht mehr auftaucht)pi@IOBroker:~ $ npm list pi@ /home/pi └── iobroker.zigbee@1.6.16 pi@IOBroker:~ $ npm list -g /usr/lib ├── corepack@0.10.0 ├── npm.old@ └── npm@8.12.2 pi@IOBroker:~ $ cd /opt/iobroker/ pi@IOBroker:/opt/iobroker $ npm list pi@IOBroker:/opt/iobroker $ npm list -g
-
Beim zigbee springst du ja auch im home vom pi rum. Haste mal irgendwann falsch eingeworfen.
Ich vermute dir fehlt der npm_command_fix:
sudo cat /root/.iobroker/npm_command_fix
-
pi@IOBroker:~ $ sudo cat /root/.iobroker/npm_command_fix # While inside the iobroker directory, execute npm as iobroker function npm() { __real_npm=$(which npm) if [[ $(pwd) == "/opt/iobroker"* ]]; then sudo -H -u iobroker $__real_npm $* else eval $__real_npm $* fi }
-
Da streich ich die Segel.
Keine Ahnung was da bei dir verbogen wurde. -
@thomas-braun ziemlich alles wie mir scheint
-
@thomas-braun
Schonmal vielen Dank für deine Bemühungen und Zeit. -
Jedenfalls solltest du DEUTLICH weniger, um nicht zu sagen NIE sudo vor npm Befehle setzen. Und auch nicht vor iobroker-Kommandos.
-
@thomas-braun
Mit der Version 14 funktionieren der Output:pi@IOBroker:/opt/iobroker $ cd /opt/iobroker pi@IOBroker:/opt/iobroker $ uname -m && which nodejs node npm && nodejs -v && node -v && npm -v && whoami && pwd && sudo apt update &> /dev/null && sudo apt update && apt policy nodejs armv7l /usr/bin/nodejs /usr/bin/node /usr/bin/npm v14.19.3 v14.19.3 6.14.17 pi /opt/iobroker Hit:1 http://phoscon.de/apt/deconz buster InRelease Hit:2 http://raspbian.raspberrypi.org/raspbian buster InRelease Hit:3 http://archive.raspberrypi.org/debian buster InRelease Hit:4 https://deb.nodesource.com/node_14.x buster InRelease Reading package lists... Done Building dependency tree Reading state information... Done 15 packages can be upgraded. Run 'apt list --upgradable' to see them. nodejs: Installed: 14.19.3-deb-1nodesource1 Candidate: 14.19.3-deb-1nodesource1 Version table: *** 14.19.3-deb-1nodesource1 500 500 https://deb.nodesource.com/node_14.x buster/main armhf Packages 100 /var/lib/dpkg/status 10.24.0~dfsg-1~deb10u1 500 500 http://raspbian.raspberrypi.org/raspbian buster/main armhf Packages pi@IOBroker:/opt/iobroker $ cd ~ pi@IOBroker:~ $ uname -m && which nodejs node npm && nodejs -v && node -v && npm -v && whoami && pwd && sudo apt update &> /dev/null && sudo apt update && apt policy nodejs armv7l /usr/bin/nodejs /usr/bin/node /usr/bin/npm v14.19.3 v14.19.3 6.14.17 pi /home/pi Hit:1 http://phoscon.de/apt/deconz buster InRelease Hit:2 http://raspbian.raspberrypi.org/raspbian buster InRelease Hit:3 http://archive.raspberrypi.org/debian buster InRelease Hit:4 https://deb.nodesource.com/node_14.x buster InRelease Reading package lists... Done Building dependency tree Reading state information... Done 15 packages can be upgraded. Run 'apt list --upgradable' to see them. nodejs: Installed: 14.19.3-deb-1nodesource1 Candidate: 14.19.3-deb-1nodesource1 Version table: *** 14.19.3-deb-1nodesource1 500 500 https://deb.nodesource.com/node_14.x buster/main armhf Packages 100 /var/lib/dpkg/status 10.24.0~dfsg-1~deb10u1 500 500 http://raspbian.raspberrypi.org/raspbian buster/main armhf Packages
Aber in der GUI wird weiterhin angezeigt:
host.IOBroker
2022-06-21 00:00:34.481 info iobroker npm-install: exit 25
host.IOBroker
2022-06-21 00:00:33.447 error iobroker npm-install: host.IOBroker Cannot install iobroker.simple-api@2.6.5: 0
host.IOBroker
2022-06-21 00:00:32.750 info iobroker npm-install: Installing iobroker.simple-api@2.6.5... (System call)
host.IOBroker
2022-06-21 00:00:32.748 info iobroker npm-install: NPM version: 6.14.17
host.IOBroker
2022-06-21 00:00:30.034 info iobroker install simple-api@2.6.5 using installedFrom
host.IOBroker
2022-06-21 00:00:30.033 warn startInstance cannot find adapter "simple-api@2.6.5". Try to install it... 1 attemptDann mal
node reinstall.js
durchlaufen lassen, aber ohne Erfolg - die Meldungen tauchen weiterhin für jeden Adapter auf. -
Warum ein npm6 aufgerufen werden kann, ein npm8 aber nicht kann ich mir nicht erklären. Die liegen an der gleichen Stelle im $PATH.
-
@thomas-braun
ich hab den Eindruck der Path zu den Adapter ist etwas verbogen:pi@IOBroker:/opt/iobroker/iobroker-data $ ls -la total 309836 drwxrwx--x+ 14 iobroker iobroker 4096 Jun 23 12:11 . drwxrwx--x+ 6 iobroker iobroker 4096 Jun 23 12:10 .. drwxrwx--x+ 2 iobroker iobroker 4096 Jun 17 23:33 backitup drwxrwx--x+ 2 iobroker iobroker 4096 Jun 23 10:08 backup-objects drwxrwx--x+ 40 iobroker iobroker 4096 Jun 11 23:56 files drwxrwx--x+ 75 iobroker iobroker 4096 Jun 11 22:25 history -rwxrwx--x+ 1 iobroker iobroker 4715 Mar 12 21:42 iobroker.json drwxrwx--x+ 3 iobroker iobroker 4096 Aug 3 2021 jarvis drwxrwx--x+ 2 iobroker iobroker 4096 Dec 7 2020 lgtv_0 drwxrwx--x+ 2 iobroker iobroker 4096 Dec 14 2020 lgtv_1 drwxrwx--x+ 6 iobroker iobroker 4096 May 29 21:22 node-red -rwxrwx--x+ 1 iobroker iobroker 3 Jun 23 12:05 notifications.json -rwxrwx--x+ 1 iobroker iobroker 4054909 Mar 12 21:41 objects.json.bak.migrated -rwxrwx--x+ 1 iobroker iobroker 304632867 Jun 23 12:20 objects.jsonl drwxrwxr-x+ 2 iobroker iobroker 4096 Jun 23 12:27 objects.jsonl.lock -rwxrwx--x+ 1 iobroker iobroker 4055543 Mar 12 21:42 objects.json.migrated -rwxrwx--x+ 1 iobroker iobroker 505754 Mar 12 21:41 states.json.bak.migrated -rwxrwx--x+ 1 iobroker iobroker 3429714 Jun 23 12:27 states.jsonl drwxrwxr-x+ 2 iobroker iobroker 4096 Jun 23 12:27 states.jsonl.lock -rwxrwx--x+ 1 iobroker iobroker 505783 Mar 12 21:42 states.json.migrated drwxrwx--x+ 2 iobroker iobroker 4096 Dec 7 2020 synology_0 drwxrwx--x+ 2 iobroker iobroker 4096 Jun 5 23:10 zigbee_0
Zigbee taucht nicht auf und jarvis gibt es schon gar nicht mehr.
-
@jokersmiler sagte in NPM Fehler:
Mit
/opt/iobroker/iobroker-data
hat das auch nix zu tun.
Die Adapter wohnen in
/opt/iobroker/node_modules
-
Ich glaube, mit der bestehenden Umgebung komme hier nicht mehr weiter und muss leider das System neu aufsetzen.
Testweise habe ich mal ein Debian unter Qemu erstelllt und das Backup eingespielt. Generell gingen viele Adapter online und auch das Updates waren wieder möglich, somit klappt generell mal das BackupIt.Mir ist dabei folgendes aufgefallen:
- Bei Zigbee waren keine Geräte mehr verfügbar, obwohl in der
shepherd.db
unter/opt/iobroker/iobroker-data/zigbee_0
was eingetragen ist. -> kann man hier noch was Wiederherstellen oder muss komplett neu angelernt werden? - Vis zeigt mir beim Aufruf nur
File edit.html not found: {}
an. Ich hab in einem anderen Beitrag gesehen, dass ggf. zuerst der Adapter installiert werden sollte, bevor ein Backup eingespielt wird. (v1.4.15) -> ich hab mal den /opt/iobroker komplett kopiert, um im Bedarf mal was wieder herzustellen, da es doch aufwendig für den Adapater alles hinzubasteln. Wäre hier sonst noch etwas zu beachten?
- Bei Zigbee waren keine Geräte mehr verfügbar, obwohl in der
-
@jokersmiler
VollständigkeitshalberRPi neu installiert - Iobroker entsprechend installiert und Backup eingespielt -> läuft wieder.