NEWS
Node JS Update von v8 auf V10 schlägt fehl
-
@Homoran : Die folgende Meldung kommt beim "iobroker stop" Befehl:
Stopping iobroker controller daemon... iobroker controller daemon stopped. fs.js:1123 return binding.chmod(pathModule._makeLong(path), modeNum(mode)); ^ Error: ENOENT: no such file or directory, chmod '/opt/iobroker/node_modules/iobroker.js-controller/lib/../killall.sh' at Object.fs.chmodSync (fs.js:1123:18) at Daemon.daemon.on (/opt/iobroker/node_modules/iobroker.js-controller/lib/setup.js:286:32) at emitOne (events.js:121:20) at Daemon.emit (events.js:211:7) at Daemon.<anonymous> (/opt/iobroker/node_modules/daemonize2/lib/daemonize.js:267:14) at Daemon._tryKill (/opt/iobroker/node_modules/daemonize2/lib/daemonize.js:277:23) at ontimeout (timers.js:498:11) at tryOnTimeout (timers.js:323:5) at Timer.listOnTimeout (timers.js:290:5)
Wenn ich danach den Fixer drüber laufen lasse "curl -sL https://iobroker.net/fix.sh | bash -" tauchen die Fehler nicht mehr auf beim stoppen. Wie kann ich herausfinden was genau dafür gefixt wurde?
Was ebenfalls nicht angezeigt wird nach absetzten des Befehls "Stopping iobroker controller daemon..."...library: loaded Library version=2020-04-12 ========================================================================== Welcome to the ioBroker installation fixer! Script version: 2020-04-12 ========================================================================== ========================================================================== Installing prerequisites (1/3) ========================================================================== OK:1 https://deb.nodesource.com/node_8.x jessie InRelease Ign:2 http://ftp.de.debian.org/debian stretch InRelease Holen:3 http://ftp.de.debian.org/debian stretch-updates InRelease [91,0 kB] OK:4 http://ftp.de.debian.org/debian stretch Release Holen:6 http://security.debian.org stretch/updates InRelease [94,3 kB] Holen:7 http://security.debian.org stretch/updates/main Sources [210 kB] Holen:8 http://security.debian.org stretch/updates/main amd64 Packages [521 kB] Es wurden 916 kB in 2 s geholt (309 kB/s). Paketlisten werden gelesen... Fertig Installed gcc-c++ Installed unzip Installed python-dev ========================================================================== Checking ioBroker user and directory permissions (2/3) ========================================================================== User iobroker created Created /etc/sudoers.d/iobroker Fixing directory permissions... ========================================================================== Checking autostart (3/3) ========================================================================== Enabling autostart... Created symlink /etc/systemd/system/multi-user.target.wants/iobroker.service → /lib/systemd/system/iobroker.service. Autostart enabled! ========================================================================== Your installation was fixed successfully Run iobroker start to start ioBroker again!
Ich würde jetzt wie folgt vorgehen:
- IOBroker stoppen (mit der Fehlermeldung)
- Fixer drüber laufen lassen lassen
- IOBroker starten
- IOBroker stoppen (ohne Fehler)
- NodeJS deinstallieren (v8)
- NodeJS installieren (v10)
Habe ich einen Schritt vergessen?
-
Liest sich gut.
Immer vorher ein Backup machen würde ich noch mit in die Liste aufnehmen.
-
Guten Abend,
das Update/die Neuinstallation hat ohne Probleme funktioniert. Ich bin jetzt allerdings direkt auf die v12 gegangen:)
Einen Punkte gab es allerdings der mir komisch vorgekommen ist. Laut System konnte das Paket "node" nicht entfernt werden da es nicht vorhanden ist:# apt-get --purge remove node Paketlisten werden gelesen... Fertig Abhängigkeitsbaum wird aufgebaut. Statusinformationen werden eingelesen.... Fertig Paket »node« ist nicht installiert, wird also auch nicht entfernt. 0 aktualisiert, 0 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.
Das ist aber falsch da die Ausgabe "node -v" entsprechend "v8.17.0" ausgegeben hatte vorab:
node -v v8.17.0
Ebenso ist mir folgender Fehler aufgefallen:
dpkg: Warnung: Während Entfernens von nodejs ist Verzeichnis »/usr/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/generator« nicht leer, wird daher nicht gelöscht
Das System läuft soweit aber stabil weshalb ich keinen Restore gemacht habe.
Kann ich den Fehler ignorieren? -
@samsungfreak
Nein.
Du hast dir ein node 8 irgendwie manuell am Paketmanager vorbei ins System gehämmert und/oder bist nicht auf node 12. Zeig mal die Ausgaben vonwhich node nodejs -v node -v
-
hallo und schönen abend!
ich steh gerade nach einem update am gleichen punkt, habe aber das npm rebuild noch nicht ausgeführt. ich bin in diesem punkt ein völliger newbie und tippe genau die anweisungen ein, welche im tutorial angegeben sind.
im info adapter steht, dass ich Node.js v8.16.2 habe
in der konsole bekomme ich folgend infos:
ich bin mir hier nicht im klaren, welche info was bedeutet.muss/soll ich mit npm rebuild weitermachen?
danke im voraus für eure hilfe
tom -
@tom_33 sagte in Node JS Update von v8 auf V10 schlägt fehl:
muss/soll ich mit npm rebuild weitermachen?
nein!
@tom_33 sagte in Node JS Update von v8 auf V10 schlägt fehl:
ich bin mir hier nicht im klaren, welche info was bedeutet.
du hast ZWEI node installationen parallel.
bitte beide löschen und eine neue installieren
-
hallo homoran!
mit
sudo apt-get --purge remove nodejs
und
sudo apt-get --purge remove node -
@tom_33 ja
-
laut konsole hatte ich node gar nicht.
bei node -v wird v8.16.2 angezeigt!?
-
@tom_33 das muss aber weg
-
@Homoran
wenn ich wüßte wie.
diese diskussion bringt mich leider auch nicht weiter
https://forum.iobroker.net/topic/24462/node-deinstallieren-fehler -
@tom_33 such mal nach einem post von paul und 'which node'
-
das ist jetzt mal auf stand.
nun zickt der zigbee adapter rum.
da werde ich wohl arteck um hilfe bitten, oder gibts da noch etwas was ich noch machen muss.
alle anderen adapter sind grün
-
@tom_33 sagte in Node JS Update von v8 auf V10 schlägt fehl:
das ist jetzt mal auf stand.
mit zigbee wäre @arteck wirklich der beste Ansprechpartner
-
@Homoran ok! vielen dank
-
@Thomas-Braun sagte in Node JS Update von v8 auf V10 schlägt fehl:
@samsungfreak
Nein.
Du hast dir ein node 8 irgendwie manuell am Paketmanager vorbei ins System gehämmert und/oder bist nicht auf node 12. Zeig mal die Ausgaben vonwhich node nodejs -v node -v
Sieht für mich soweit eigentlich gut aus:
root@Broker:~# which node /usr/bin/node root@Broker:~# nodejs -v v12.16.2 root@Broker:~# node -v v12.16.2
-
@samsungfreak Ja, jetzt scheint es ok zu sein.
Du fährst ein Debian, oder? Im Docker?
root-Login macht mich immer ganz nervös. Da kann man so schön alles verbiegen...
Was kommt denn beils -la /usr/local/bin
rum?
-
Zum Topic - aber nicht speziell zum letzten post:
Ich habe nun 2 Major Version Upgrades erfolgreich durchgeführt. 8-10-12
Egal ob im Master (docker auf QNAP) oder den clients (RBP3b+) es klappte nie ohne "n" auch wenn alles korrekt installiert wurde, habe ich immer die alte version angezeigt bekommen (node -v). Mit "n" ist das gelöst. Hier mein Weg der immer klappte mit "n" - falls ihr "n" nicht habt - geht einfach ins system "sudo npm install -g n" bzw hier nachlesen https://www.npmjs.com/package/nUnter dem user "pi" auf den raspb 3b+ bzw unter dem container user:
cd /opt/iobroker/
iobroker stop
iobroker backup
curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
sudo apt-get install -y nodejs
sudo n 12.16.3
sudo npm install npm@latest -g
node -v
npm -v
npm rebuild
curl -sL https://iobroker.net/fix.sh | bash -
iobroker startViel Erfolg
Wolfgang
-
@realwax said in Node JS Update von v8 auf V10 schlägt fehl:
sudo apt-get install -y nodejs
sudo n 12.16.3Da machst du aber Dinge doppelt. Das könnte früher oder später wieder zu Problemen führen. Zum einen ziehst du über apt/dpkg ein nodejs inkl. node und npm aus dem nodesource-Repository, zum anderen auf einem zweiten, davon unabhängigen Weg über n dann nochmal ein separates node 12.16.3.
Das liegt dann in $HOME/n bzw. $HOME/n/bin und dürfte eigentlich dann dort auch nicht mehr genutzt werden, dennpi@raspberrypi:~ $ echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games
Im besten Fall ist es überflüssig, stört aber auch nicht weiter; im blödsten Fall stolpert man doch noch irgendwie drüber.
-
@Thomas-Braun sagte in Node JS Update von v8 auf V10 schlägt fehl:
@samsungfreak Ja, jetzt scheint es ok zu sein.
Du fährst ein Debian, oder? Im Docker?
root-Login macht mich immer ganz nervös. Da kann man so schön alles verbiegen...
Was kommt denn beils -la /usr/local/bin
rum?
Genau es handelt sich um ein Debian System aber ganz normal als VM (VMware) und nicht im Docker.
Hier die Ausgabe:root@Broker:~# ls -la /usr/local/bin insgesamt 8 drwxrwsr-x 2 root staff 4096 Feb 18 2017 . drwxrwsr-x 10 root staff 4096 Feb 11 2017 ..