NEWS
NPM Fehler
-
@thomas-braun
Hi - ich hab mal mehrmals versucht es zu installieren. Mittlerweile schaut es wie folgt aus:pi@IOBroker:~ $ npm -v 8.12.2 pi@IOBroker:~ $ cd /opt/iobroker/ pi@IOBroker:/opt/iobroker $ npm -v
Auch auf der GUI bekomme ich folgendes:
Wie kann man das fixen?
-
@thomas-braun
Hi - ich hab mal mehrmals versucht es zu installieren. Mittlerweile schaut es wie folgt aus:pi@IOBroker:~ $ npm -v 8.12.2 pi@IOBroker:~ $ cd /opt/iobroker/ pi@IOBroker:/opt/iobroker $ npm -v
Auch auf der GUI bekomme ich NPM Fehler :
Dann bin mal folgender Anleitung gefolgt:
https://www.elzershark.com/forum/index.php?thread/157-nach-update-node-adapter-können-nicht-mehr-gelöscht-bzw-hinzugefügt-werden/dann wieder folgenden Fehler bekommen:
pi@IOBroker:/opt/iobroker $ npm rebuild Error: EISDIR: illegal operation on a directory, read
Und diesen Link mal dann befolgt.
https://forum.iobroker.net/topic/17109/wichtige-hinweise-bei-neueren-npm-versionen-und-sudound auf der GUI hat es folgende Auswirkung, dafür keine o.g. NPM Fehler mehr.
iobroker npm-install: host.IOBroker Cannot install iobroker.vis@1.4.15: 0
Wie kann man das fixen?
-
Ist nodejs jetzt noch senkrecht installiert?
Schau in meiner Signatur wie es richtig geht.Ich hoffe, du hast das nicht mit dem tollen Tool vom Elsterfischstäbchen gemacht. Das macht nur noch mehr kaputt.
-
ka wieviel ich schon kaputt gemacht habe.
Aber ein Fehler war auf jeden Fall folgender:
/usr/bin/nodejs
/usr/local/node
/usr/bin/npmwurde entsprechend deiner Anleitung behoben. Output ist aber noch folgendes:
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 -bash: /usr/local/bin/node: No such file or directory
ich bekomme noch folgendes:
sudo ln -s /usr/bin/node /usr/bin/nodejs ln: failed to create symbolic link '/usr/bin/nodejs': File exists
rwxr-xr-x 1 root root 69049340 May 17 19:10 node lrwxrwxrwx 1 root root 44 Jun 12 00:19 node-gyp -> ../lib/node_modules/node-gyp/bin/node-gyp.js lrwxrwxrwx 1 root root 24 Dec 3 2020 nodejs -> /etc/alternatives/nodejs
aber er nimmt noch
pi@IOBroker:/opt/iobroker $ node reinstall.js -bash: /usr/local/bin/node: No such file or directory
Dann erneut purge nur kommt bei mir noch folgendes:
pi@IOBroker:/opt/iobroker $ sudo apt --purge autoremove nodejs Reading package lists... Done Building dependency tree Reading state information... Done The following packages will be REMOVED: nodejs* 0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded. After this operation, 117 MB disk space will be freed. Do you want to continue? [Y/n] (Reading database ... 165909 files and directories currently installed.) Removing nodejs (14.19.3-deb-1nodesource1) ... dpkg: warning: while removing nodejs, directory '/usr/lib/node_modules/npm/docs' not empty so not removed ...
Diesmal sah es etwas besser aus:
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://archive.raspberrypi.org/debian buster InRelease Hit:3 http://raspbian.raspberrypi.org/raspbian buster InRelease Hit:4 https://deb.nodesource.com/node_14.x buster InRelease Reading package lists... Done Building dependency tree Reading state information... Done All packages are up to date. 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
pi@IOBroker:/opt/iobroker $ npm rebuild Error: EISDIR: illegal operation on a directory, read
pi@IOBroker:/opt/iobroker $ node reinstall.js
lief diesmal durchAbschließend noch ein
iobroker fix
Aber es kommt nach dem Start vom iobroker im Log weiterhin
iobroker npm-install: exit 25 -
Du hantierst da immer noch mit schrägen/falschen Befehlen. Und die von dir irgendwie reingeknallte nodejs-Version hat sich in die Alternatives gesetzt. Das macht das nodesource-Paket auch nicht. Da ist noch einiges kreuz und quer bei dir.
Den User einmal ab- und wieder anmelden (oder ein reboot des Systems) liest aber zumindest den PATH für den User wieder richtig ein.
-
Wie sollte es grundlegend aussehen?
Ausgabe von
sudo nano /etc/apt/sources.list.d/nodesource.list
ist:deb [signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_14.x buster main deb-src [signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_14.x buster main
Scheinbar passt aber das alternatives
pi@IOBroker:/opt/iobroker $ ls -la /usr/bin/nodejs lrwxrwxrwx 1 root root 24 Dec 3 2020 /usr/bin/nodejs -> /etc/alternatives/nodejs pi@IOBroker:/opt/iobroker $ ls -la /etc/alternatives/nodejs lrwxrwxrwx 1 root root 13 Dec 3 2020 /etc/alternatives/nodejs -> /usr/bin/node
Ein reboot hatte leider keine Änderung gebracht.
Hast du noch einen Ansatz? -
In die nodesource.list gehört nodejs16 eingetragen.
Und die alternatives passen nicht, weil das nodesource-Paket nicht über alternatives läuft.
Du hast da also eine anders gepacktes nodesource installiert. Die Frage ist: Welches und warum, nach welcher Anleitung? -
War eine veraltete Anleitung.
Hab mal ein Update gemacht, nur NPM wird mir als Version nicht angezeigt.pi@IOBroker:/opt/iobroker $ node -v v16.15.1 pi@IOBroker:/opt/iobroker $ nodejs -v v16.15.1 pi@IOBroker:/opt/iobroker $ npm -v pi@IOBroker:/opt/iobroker $ cd .. pi@IOBroker:/opt $ cd .. pi@IOBroker:/ $ npm -v 8.11.0
und hier fehlt wieder etwas... im Verzeichnis
/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
Ich nehme an, dass das aktuelle Problem ist, dass wohl NPM für den iobroker nicht erkannt wird... wo könnte die Konfiguration dafür angepasst werden?
-
Ich sehe nicht was du da treibst oder getrieben hast.
Welche Anleitung? -
-
-
@jokersmiler sagte in NPM Fehler:
@thomas-braun
https://www.elzershark.com/forum/index.php?thread/157-nach-update-node-adapter-k%C3%B6nnen-nicht-mehr-gel%C3%B6scht-bzw-hinzugef%C3%BCgt-werden/ohne Worte!
DANKE!
-
Ganz ehrlich: Lass die Finger von JEGLICHEN Murks-Anleitungen vom dem Elsterfischstäbchen. Das ist durch die Bank Schrott. Inklusive des windigen tollen Tools...
Und nach welcher 'Anleitung' hast du initial die node16 ins System gebracht?
-
ja scheinbar hatte es nicht den gewünschten Effekt.
Wie könnte ich NPM wieder für ioBroker gefixt bekommen?
-
cd ~ sudo ln -s /usr/bin/node /usr/bin/nodejs 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
-
Bist du 'Winglet' im anderen Forum?
Dann:
Und nach welcher 'Anleitung' hast du initial die node16 ins System gebracht? -
Welches Forum - welcher Winglet? Nach deiner Empfehlung hab ich aus 14 mal 16 ausprobiert und dabei diese Anleitung versucht: https://www.iobroker.net/#de/documentation/install/linux.md
Aber es scheint auch mit Unterstützung wohl schwierig zu sein, wieder eine funktionierende Umgebung hinzubekommen. Bislang ist mir folgendes aufgefallen
- Soweit ich das sehe, ist Nodejs 16 mit npm 6 eher kompatibel zu sein, da im
/opt/iobroker
dernpm -v
angezeigt wird. Iobroker fix
läuft auch nicht ganz rund bei den Rechten, "double dot (..) wird wohl vergessen"lrwxrwxrwx 1 root root 13 Jun 19 22:29 nodejs -> /usr/bin/node
passt auch wieder
Aber es tauchen weiterhin Fehler in der GUI auf, wie z.B.:
host.IOBroker
2022-06-20 21:59:24.788 info iobroker npm-install: exit 25
host.IOBroker
2022-06-20 21:59:23.747 error iobroker npm-install: host.IOBroker Cannot install iobroker.flot@1.10.7: 0
host.IOBroker
2022-06-20 21:59:22.995 info iobroker npm-install: Installing iobroker.flot@1.10.7... (System call)
host.IOBroker
2022-06-20 21:59:22.994 info iobroker npm-install: NPM version: 6.14.17
host.IOBroker
2022-06-20 21:59:20.190 info iobroker install flot using installedVersionEine Idee woran das liegen könnte?
- Soweit ich das sehe, ist Nodejs 16 mit npm 6 eher kompatibel zu sein, da im
-
@jokersmiler sagte in NPM Fehler:
ist Nodejs 16 mit npm 6 eher kompatibel zu sein
Nein. nodejs16 kommt mit npm8 daher. Das ist dann auch bestens miteinander kompatibel.
Iobroker fix läuft auch nicht ganz rund bei den Rechten, "double dot (..) wird wohl vergessen"
Du weißt schon, dass die . und .. in den Verzeichnissen eh ganz eigenen Regeln unterliegen? Pack die nie an!
-
@jokersmiler sagte in NPM Fehler:
Eine Idee woran das liegen könnte?
Nein. Wie hast du denn jetzt nodejs hingefummelt?
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
-
den symbolischen Link angepasst.
npm8 löst folgendes aus in der GUI
iobroker npm-install: Use "npm install -g npm@4" or "npm install -g npm@latest" to install a supported version.You need to make sure to repeat this step after installing an update to NodeJS and/or npm!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!