NEWS
Diskussion zum HowTo nodejs-Installation und upgrade
-
Gelöst:
Ich habe den Backitup Adaper gelöscht und neu installiert und dann ging es.Beste Grüße
-
Guten Morgen,
ich versuche gerade meinen alten Raspberry Pi 4 wieder auf den aktuellen STand zu bringen. Ich habe bereits das update von Buster auf Bullseye vollzogen und bin von Nodejs V12.22.12 auf aktuell v16.19.1 gewechselt. NPM ist 8.19.3. Was leider nicht funktioniert, ist das Update des JS.Controllers. Der bleibt ums verrecken auf 3.1.6 stehen. Ich hab das Forum hier mehrfach durchsucht und alles mögliche ausprobiert, aber es hilft nichts. Hier der aktuelle Stand, danach die Fehlermeldungen beim upgrade.
pi@raspberrypi:~ $ uname -m && type -P nodejs node npm npx && nodejs -v && node -v && npm -v && npx -v && iob -v && whoami && groups && echo $XDG_SESSION_TYPE && pwd && sudo apt update &> /dev/null && sudo apt update && apt policy nodejs armv7l /usr/bin/nodejs /usr/bin/node /usr/bin/npm /usr/bin/npx v16.19.1 v16.19.1 8.19.3 8.19.3 3.1.6 pi pi adm dialout cdrom sudo audio video plugdev games users input netdev gpio i2c spi iobroker tty /home/pi Hit:1 http://phoscon.de/apt/deconz buster InRelease Hit:2 http://archive.raspberrypi.org/debian bullseye InRelease Hit:3 http://raspbian.raspberrypi.org/raspbian bullseye InRelease Hit:4 https://deb.nodesource.com/node_16.x bullseye InRelease Hit:5 https://www.pivccu.de/piVCCU stable InRelease Reading package lists... Done Building dependency tree... Done Reading state information... Done All packages are up to date. nodejs: Installed: 16.19.1-deb-1nodesource1 Candidate: 16.19.1-deb-1nodesource1 Version table: *** 16.19.1-deb-1nodesource1 500 500 https://deb.nodesource.com/node_16.x bullseye/main armhf Packages 100 /var/lib/dpkg/status 12.22.12~dfsg-1~deb11u3 500 500 http://raspbian.raspberrypi.org/raspbian bullseye/main armhf Packages
pi@raspberrypi:~ $ sudo -H -u iobroker npm install iobroker.js-controller npm notice npm notice New major version of npm available! 8.19.3 -> 9.5.0 npm notice Changelog: https://github.com/npm/cli/releases/tag/v9.5.0 npm notice Run npm install -g npm@9.5.0 to update! npm notice npm ERR! code EACCES npm ERR! syscall mkdir npm ERR! path /home/pi/node_modules npm ERR! errno -13 npm ERR! Error: EACCES: permission denied, mkdir '/home/pi/node_modules' npm ERR! [Error: EACCES: permission denied, mkdir '/home/pi/node_modules'] { npm ERR! errno: -13, npm ERR! code: 'EACCES', npm ERR! syscall: 'mkdir', npm ERR! path: '/home/pi/node_modules' npm ERR! } npm ERR! npm ERR! The operation was rejected by your operating system. npm ERR! It is likely you do not have the permissions to access this file as the current user npm ERR! npm ERR! If you believe this might be a permissions issue, please double-check the npm ERR! permissions of the file and its containing directories, or try running npm ERR! the command again as root/Administrator. npm ERR! A complete log of this run can be found in: npm ERR! /home/iobroker/.npm/_logs/2023-02-20T08_00_59_410Z-debug-0.log
Da ich mittlerweile ratlos bin, hoffe ich das ihr mir helfen könnt den JS-Controller auf die aktuelle Stable Version zu bekommen. Vielen Dank.
-
Du stehst im falschen Verzeichnis.
cd /opt/iobroker
vorab, dann funktioniert es auch.
An der Stelle kann man auch gut sehen, warum man nicht als root herumhampelt. Wenn du den Befehl mit dessen vollen Rechten ausgeführt hättest wäre der ganze Kram an der falschen Stelle ins System geklatscht worden. So ist gar nix passiert und die Rechteverwaltung konnte den Fehler abfangen.
Und man kann ebenfalls gut sehen, warum immer alle darauf bestehen, dass Konsolentexte vollständig inkl. Login Prompt zu posten sind. So konnte man direkt sehen, dass du da falsch stehst.
Alles richtig gemacht, was das Forum angeht.
(Nur ein wenig am eigentlichen Thema des Threads vorbei...) -
@thomas-braun said in Diskussion zum HowTo nodejs-Installation und upgrade:
Du stehst im falschen Verzeichnis.
cd /opt/iobroker
vorab, dann funktioniert es auch.
An der Stelle kann man auch gut sehen, warum man nicht als root herumhampelt. Wenn du den Befehl mit dessen vollen Rechten ausgeführt hättest wäre der ganze Kram an der falschen Stelle ins System geklatscht worden. So ist gar nix passiert und die Rechteverwaltung konnte den Fehler abfangen.
Und man kann ebenfalls gut sehen, warum immer alle darauf bestehen, dass Konsolentexte vollständig inkl. Login Prompt zu posten sind. So konnte man direkt sehen, dass du da falsch stehst.
Alles richtig gemacht, was das Forum angeht.
(Nur ein wenig am eigentlichen Thema des Threads vorbei...)Danke schonmal für die Antwort, leider bringt auch der Wechsel des Verzeichnisses leider nicht den gewünschten Erfolg.
pi@raspberrypi:/opt/iobroker $ iobroker upgrade self Update js-controller from @3.3.22 to @4.0.24 NPM version: 8.19.3 npm install iobroker.js-controller@4.0.24 --loglevel error --unsafe-perm --prefix "/opt/iobroker" (System call) npm ERR! code ENOTEMPTY npm ERR! syscall rename npm ERR! path /opt/iobroker/node_modules/accepts npm ERR! dest /opt/iobroker/node_modules/.accepts-rBwU1CL7 npm ERR! errno -39 npm ERR! ENOTEMPTY: directory not empty, rename '/opt/iobroker/node_modules/accepts' -> '/opt/iobroker/node_modules/.accepts-rBwU1CL7' npm ERR! A complete log of this run can be found in: npm ERR! /home/iobroker/.npm/_logs/2023-02-20T08_50_59_078Z-debug-0.log host.raspberrypi Cannot install iobroker.js-controller@4.0.24: 217
-
https://forum.iobroker.net/topic/57337/fehler-25-oder-217-bei-adapter-install-update-mit-npm8
Anderer Hinweis: Das deconz/phoscon-Repo muss auch auf bullseye umgestellt werden.
-
Upgrade auf nodejs 18 mit npm 9 lief gestern relativ sauber durch.
Einige Meldungen sind beim ersten Start aufgetreten,
was aber aus dem ersten Start resultieren kann.Seit ca. 12 Stunden läuft das System stabil.
-
Habe leider nichts gefunden über die Suche...
Seit ca. einer Woche würde ein Update angezeigt werden.
Plattform: linux RAM: 7.7 GB Node.js: v16.19.1(16.20.0) NPM: 8.19.3(8.19.4)
Wenn ich versuche das System zu updaten passiert aber nichts...
Hat von euch auch jemand das Problem?peter@iobroker:~$ iobroker stop peter@iobroker:~$ sudo apt update [sudo] Passwort für peter: OK:1 http://deb.debian.org/debian bullseye InRelease OK:2 http://security.debian.org/debian-security bullseye-security InRelease OK:3 http://deb.debian.org/debian bullseye-updates InRelease OK:4 https://deb.nodesource.com/node_16.x bullseye InRelease Paketlisten werden gelesen… Fertig Abhängigkeitsbaum wird aufgebaut… Fertig Statusinformationen werden eingelesen… Fertig Alle Pakete sind aktuell. peter@iobroker:~$ sudo apt upgrade Paketlisten werden gelesen… Fertig Abhängigkeitsbaum wird aufgebaut… Fertig Statusinformationen werden eingelesen… Fertig Paketaktualisierung (Upgrade) wird berechnet… Fertig 0 aktualisiert, 0 neu installiert, 0 zu entfernen und 0 nicht aktualisiert. peter@iobroker:~$ sudo apt full-upgrade Paketlisten werden gelesen… Fertig Abhängigkeitsbaum wird aufgebaut… Fertig Statusinformationen werden eingelesen… Fertig Paketaktualisierung (Upgrade) wird berechnet… Fertig 0 aktualisiert, 0 neu installiert, 0 zu entfernen und 0 nicht aktualisiert. peter@iobroker:~$ sudo reboot
-
@draexler sagte in Diskussion zum HowTo nodejs-Installation und upgrade:
Seit ca. einer Woche würde ein Update angezeigt werden.
wo wird das angezeigt?
dann frag doch die aktuelle Version im terminal ab
-
@draexler sagte in Diskussion zum HowTo nodejs-Installation und upgrade:
16.20.0
Die Version ist noch nicht von nodesource gebaut worden.
Abwarten und regelmäßig per apt nachschauen ob das vorbeitreibt.Bzw. würde ich eh auf nodejs18 hüpfen.
-
@thomas-braun Super, danke für die Antwort Bin normalerweise ein fleißiger Updater und war/bin deswegen ein bisschen verwundert gewesen.
Edit: Wahrscheinlich ein Grund wie du schon sagst auf die 18 zu springen. Mache ich heute Abend dann gleich.
-
Ich habe jetzt alles durchgelesen, wie man node.js von der Version 16.9.1 auf 18.16.0 updaten soll.
Aber ich werde da nicht schlau daraus. Da soll man in eine Datei mit nano eine Zeile einfügen. Aber welche?
Bei mir steht da drinnen:GNU nano 5.4 /etc/apt/sources.list.d/nodesource.list deb [signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_16.x bullseye main deb-src [signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_16.x bullseye main
Wenn dann die mir nicht bekannte Zeile eingefügt und die Datei abgespeichert ist, was ist dann zu machen um auf die node.js 18.16.0 zu kommen?
-
@bergjet
Du änderst ja die Source von Node und wenn die auf 18 steht, dann holt er beim System Update eben vom 18er Repo die Node Version. Sehr einfach, oder was genau versteht daran nicht?Eigentlich wird auch nichts eingefügt, sondern die 16 in 18 geändert
-
@bergjet sagte in Diskussion zum HowTo nodejs-Installation und upgrade:
Aber ich werde da nicht schlau daraus. Da soll man in eine Datei mit nano eine Zeile einfügen. Aber welche?
Warum nicht? Sind doch sogar Beispiele dabei, wie die Datei und die einzelnen Zeilen aufgebaut sein können.
-
@thomas-braun Also wenn ich von 16.x auf die 18.x kommen will, muss ich alle diese Zeilen aus dem Beispiel in die Datei einfügen?
Und was muss ich dann machen? -
@bergjet
lesen tust aber auch?
Nein, nur 16 durch 18 ersetzten und ein System Update, fertig. -
@bergjet sagte in Diskussion zum HowTo nodejs-Installation und upgrade:
muss ich alle diese Zeilen aus dem Beispiel in die Datei einfügen?
? Nein, für jede Version gibt es genau EINE Zeile.
Und was muss ich dann machen?
Steht das nicht auch in der Anleitung? Übliches Systemupdate.
-
ich würde mal Deine Hilfe brauchen beim npm update:
nach Deiner Anleitung hab ich den npm-tree überprüft, das kam dabei raus:pi@ioBroker482:~ $ npm ls | grep -E 'github|ERR' npm ERR! peer dep missing: buffer@>=6.0.3, required by crc@4.1.1 npm ERR! extraneous: lodash@4.17.21 /home/pi/node_modules/supermixer/node_modules/lodash pi@ioBroker482:~ $
Was kann/muss ich machen, um die erste Fehlermeldung glatt zu ziehen?
Die zweite kann ich ignorieren, wenn ich das richtig gelesen habe? -
@atticus sagte in Diskussion zum HowTo nodejs-Installation und upgrade:
Was kann/muss ich machen, um die erste Fehlermeldung glatt zu ziehen?
Einfach sauber updaten, die Meldung dürfte mit npm>7 verschwinden.
-
@atticus sagte in Diskussion zum HowTo nodejs-Installation und upgrade:
pi@ioBroker482:~ $ npm ls | grep -E 'github|ERR'
Du stehst allerdings im falschen Verzeichnis.
Im ~/home des pi liegen keine npm-Modulel für den ioBroker.
Da ist vermutlich mal irgendwann irgendwas dahin geballert worden.Denn üblicherweise ist das da leer:
echad@chet:~ $ npm ls /home/echad └── (empty)
-
ich muss noch mal blöd nachfragen:
Wie meinst Du das, "sauber updaten", soll ich jetzt einfach das npm-update starten, oder den "ERR: peer deep missing.." zuerst bereinigen, und wenn ja wie?
Weil du hattest ja in der npm-update Anleitung geschrieben, das der npm-tree keine Fehler aufweisen darf?!Also ich muss in /opt/iobroker schauen, richtig?
pi@ioBroker482:/opt/iobroker $ npm ls | grep -E 'github|ERR' ├─┬ iobroker.enocean@0.3.3 (git+ssh://git@github.com/Jey-Cee/ioBroker.enocean.git#9e147bc8e397ffe07eaecd95beb9bce82e3bf4ba) │ │ ├── github-from-package@0.0.0 deduped │ │ │ ├── github-from-package@0.0.0 npm ERR! peer dep missing: buffer@>=6.0.3, required by crc@4.1.1 npm ERR! extraneous: libmime@5.0.0 /opt/iobroker/node_modules/node-red-node-email/node_modules/libmime pi@ioBroker482:/opt/iobroker $
Ist das so das richtige Verzeichnis?
Den EnoceanAdapter hab ich deinstalliert, weiß nicht warum der noch auftaucht?