NEWS
[How-to] Node.js für ioBroker richtig updaten
-
@Thomas-Braun
Im Falle eines Totalausfalls ja. Nachts werden von den VMs ein Backup auf ein externes NAS gemacht. Ein zweiter identischer Rechner steht cold-standby parat. Hat sich auch schon bewähren müssen nach dem ein Rechner einen Hitzschlag bekommen hat.Leider ist mein Wissen und Können mit der ganzen von mir eingesetzten Technik nicht so tief und mehr Try-and-Error. Und jetzt bin ich nicht mehr weiter gekommen.
Ich werde jetzt eine neue VM mit dem 10er Image aufsetzen mit Prozessorarchitektur host
iobroker neu installieren und auf node 12.x hoffen
Die neue Instanz bekommt dann die gleiche IP, die aktuelle VM wird gestoppt.
Das ioBroker-Backup einspielen, warten und freuen. -
@Stefan_1969 sagte in [How-to] Node.js für ioBroker richtig updaten:
Die neue Instanz bekommt dann die gleiche IP, die aktuelle VM wird gestoppt.
Das ioBroker-Backup einspielen, warten und freuen.klingt gut!
-
Hab nun auch das Update auf node 12 gewagt, leider mit einigen Problemen.
radar2 findet bisher keine BT Geräte. Bis node 10 ging es mit noble was er auch findet:
radar2.0 2020-05-23 20:21:30.788 warn (11795) node-bluetooth not found! radar2.0 2020-05-23 20:21:37.606 info (11795) found and will use '@abandonware/noble' radar2.0 2020-05-23 20:21:37.738 info (11795) Will try to scan BT devices: false
Aber node-bluetooth wird wahrs. auch benötigt. Habe im iobroker.radar2 Ordner schon das probiert:
npm install node-pre-gyp npm install @abandonware/bluetooth-hci-socket npm install node-bluetooth
Aber node-bluetooth wird nicht installiert.
npm Log:
2020-05-23T18_35_44_502Z-debug.log -
@Diginix du musst nach dem node Update diese ganzen setcap Befehle aus der Radar2 Doku neu ausführen!!
-
@Diginix node-Bluetooth gibts nicht. Wo hast du er das das gebraucht wird?
-
@apollon77 Die habe ich schon mehrfach ausgeführt:
sudo apt-get -y install libcap2-bin arp-scan bluetooth bluez libbluetooth-dev libudev-dev net-tools sudo setcap cap_net_admin,cap_net_raw,cap_net_bind_service=+eip $(eval readlink -f `which arp-scan`) sudo setcap cap_net_admin,cap_net_raw,cap_net_bind_service=+eip $(eval readlink -f `which node`) sudo setcap cap_net_admin,cap_net_raw,cap_net_bind_service=+eip $(eval readlink -f `which arp`) sudo setcap cap_net_admin,cap_net_raw,cap_net_bind_service=+eip $(eval readlink -f `which hcitool`) sudo setcap cap_net_admin,cap_net_raw,cap_net_bind_service=+eip $(eval readlink -f `which hciconfig`) sudo setcap cap_net_admin,cap_net_raw,cap_net_bind_service=+eip $(eval readlink -f `which l2ping`)
Na im Log steht dass er node-bluetooth nicht findet. Daher dachte ich es wird benötigt. Zumindest findet radar2 mit nodejs 12 bei mir keine BT Geräte mehr. Weder BLE noch normale.
In der Kommandozeile klappt es mit hcitool scan und hcitool lescan.
Aber bei radar2 musste ich schon unter node 8 und 10 immer noble nehmen statt hci. -
@Diginix wurde doch im neuen Update entfernt
https://forum.iobroker.net/post/435884 -
@crunchip Oh, ok das Update ging an mir vorbei!
Aber nach einem weiteren Reboot findet radar2 1.2.5 nun auch wieder meine Geräte.
Werde aber mal das Update auf v2 testen.Edit: radar2 1.9.9 funktioniert.
-
habe heute den Slave auf Node 12.17.0 upgedatet.
gibt#s was neus zum Fixer oder ist der immer noch der gleiche?Als ich den ausgeführt habe:
curl -sL https://raw.githubusercontent.com/ioBroker/ioBroker/stable-installer/fix_installation.sh | bash -
bekam ich folgende Meldung:
Gruß,
Mathias -
@MathiasJ
Also Dein Aufruf ist sehr alt, der neuere sieht so aus:curl -sL https://iobroker.net/fix.sh | bash -
wobei das mittlerweile schon vollkommen reicht:
iobroker fix
-
@Jan1
danke, probiere ich gleich mal. -
@MathiasJ
Das funktioniert, gerade gestern nach Node Update nötig gewesen -
@Jan1
super läuft!
danke nochmals...... -
Kurzes Feedback an Euch, die mir auf die Sprünge geholfen haben.
Fertig! Scheint (fast) alles in der neuen VM zu laufen.
Ging ein bisschen, da ich krankheitsbedingt (Chemo) nicht immer die nötige Ausdauer und Nerven habe.
Vielen Dank für die Hilfe und ein grosses Lob für das System.
Chapeau an die Entwickler, Admins und Unterstützer! -
Mein zigbee adapter läuft nicht mehr! Ich habe geupdatet von 10 auf 12. Danach habe ich den fixer laufen lassen und ein npm rebuild im iobroker verzeichnis ausgeführt. Hier kommt ganz am schluss dieser error:
node-aead-crypto is no longer needed on NodeJS 10+ npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! node-aead-crypto@2.1.4 install: `node lib/install.js` npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the node-aead-crypto@2.1.4 install script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above. npm ERR! A complete log of this run can be found in: npm ERR! /home/iobroker/.npm/_logs/2020-05-30T20_55_21_164Z-debug.log
es laufen alle adapter bis auf zigbee. Dieser bringt diese fehler im log, die auf jeden Fall was mit dem update zu tun haben. Der befehl iobroker rebuild zigbee ist nicht bekannt. Wie kann ich manuell ein rebuild von zigbee machen?
ost.iobroker 2020-05-30 23:01:07.023 error instance system.adapter.zigbee.0 terminated with code 1 (JS_CONTROLLER_STOPPED) host.iobroker 2020-05-30 23:01:07.023 error Caught by controller[0]: at Module.load (internal/modules/cjs/loader.js:986:32) host.iobroker 2020-05-30 23:01:07.023 error Caught by controller[0]: at Object.Module._extensions..js (internal/modules/cjs/loader.js:1158:10) host.iobroker 2020-05-30 23:01:07.022 error Caught by controller[0]: at Module._compile (internal/modules/cjs/loader.js:1138:30) host.iobroker 2020-05-30 23:01:07.022 error Caught by controller[0]: at Object.<anonymous> (/opt/iobroker/node_modules/@serialport/bindings/lib/linux.js:2:36) host.iobroker 2020-05-30 23:01:07.022 error Caught by controller[0]: at bindings (/opt/iobroker/node_modules/@serialport/bindings/node_modules/bindings/bindings.js:112:48) host.iobroker 2020-05-30 23:01:07.022 error Caught by controller[0]: at require (internal/modules/cjs/helpers.js:72:18) host.iobroker 2020-05-30 23:01:07.022 error Caught by controller[0]: at Module.require (internal/modules/cjs/loader.js:1026:19) host.iobroker 2020-05-30 23:01:07.022 error Caught by controller[0]: at Function.Module._load (internal/modules/cjs/loader.js:879:14) host.iobroker 2020-05-30 23:01:07.021 error Caught by controller[0]: at Module.load (internal/modules/cjs/loader.js:986:32) host.iobroker 2020-05-30 23:01:07.021 error Caught by controller[0]: at Object.Module._extensions..node (internal/modules/cjs/loader.js:1188:18) host.iobroker 2020-05-30 23:01:07.021 error Caught by controller[0]: the module (for instance, using `npm rebuild` or `npm install`). host.iobroker 2020-05-30 23:01:07.020 error Caught by controller[0]: NODE_MODULE_VERSION 72. Please try re-compiling or re-installing host.iobroker 2020-05-30 23:01:07.020 error Caught by controller[0]: NODE_MODULE_VERSION 64. This version of Node.js requires host.iobroker 2020-05-30 23:01:07.020 error Caught by controller[0]: was compiled against a different Node.js version using host.iobroker 2020-05-30 23:01:07.020 error Caught by controller[0]: Error: The module '/opt/iobroker/node_modules/@serialport/bindings/build/Release/bindings.node' host.iobroker 2020-05-30 23:01:07.020 error Caught by controller[0]: ^ host.iobroker 2020-05-30 23:01:07.019 error Caught by controller[0]: throw e; host.iobroker 2020-05-30 23:01:07.019 error Caught by controller[0]: /opt/iobroker/node_modules/@serialport/bindings/node_modules/bindings/bindings.js:121 host.iobroker 2020-05-30 23:01:06.505 info instance system.adapter.weatherunderground.0 terminated with code 0 (NO_ERROR) host.iobroker 2020-05-30 23:01:06.465 info instance system.adapter.zigbee.0 started with pid 2647 host.iobroker 2020-05-30 23:01:06.413 info "system.adapter.zigbee.0" enabled
-
-
cd /opt/iobroker sudo -H -u iobroker npm rebuild @serialport
-
root@iobroker:/opt/iobroker# sudo -H -u iobroker npm rebuild @serialport npm ERR! code EINVALIDTAGNAME npm ERR! Invalid tag name "@serialport": Tags may not have any characters that encodeURIComponent encodes. npm ERR! A complete log of this run can be found in: npm ERR! /home/iobroker/.npm/_logs/2020-05-30T21_09_44_141Z-debug.log
dann kommt dass das kein iobroker befehl ist und es wird eine liste angezeigt welche es gibt.
-
@saeft_2003 sagte in [How-to] Node.js für ioBroker richtig updaten:
kein iobroker befehl ist
Sorry ... ich dachte du hast JS3
-