Skip to content
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. [How-to] Node.js ioBroker richtig updaten-2021/22 Edition

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.2k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.2k

[How-to] Node.js ioBroker richtig updaten-2021/22 Edition

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
812 Beiträge 97 Kommentatoren 363.4k Aufrufe 83 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • K kaifu

    @apollon77
    Erstmal vielen Dank für die Anleitung. Fast alles hat auch so geklappt. Zigbee ging mit Warten grundsätzlich auch. Ich habe allerdings 2 Zigbee Instanzen und die zweite macht Ärger:

    2021-05-01 21:17:22.097 - error: host.raspberrypi Caught by controller[0]: /opt/iobroker/node_modules/zigbee-herdsman/node_modules/bindings/bindings.js:121
    2021-05-01 21:17:22.097 - error: host.raspberrypi Caught by controller[0]: throw e;
    2021-05-01 21:17:22.097 - error: host.raspberrypi Caught by controller[0]: ^
    2021-05-01 21:17:22.097 - error: host.raspberrypi Caught by controller[0]: Error: The module '/opt/iobroker/node_modules/zigbee-herdsman/node_modules/@serialport/bindings/build/Release/bindings.node'
    2021-05-01 21:17:22.098 - error: host.raspberrypi Caught by controller[0]: was compiled against a different Node.js version using
    2021-05-01 21:17:22.098 - error: host.raspberrypi Caught by controller[0]: NODE_MODULE_VERSION 64. This version of Node.js requires
    2021-05-01 21:17:22.098 - error: host.raspberrypi Caught by controller[0]: NODE_MODULE_VERSION 72. Please try re-compiling or re-installing
    2021-05-01 21:17:22.098 - error: host.raspberrypi Caught by controller[0]: the module (for instance, using `npm rebuild` or `npm install`).
    2021-05-01 21:17:22.098 - error: host.raspberrypi Caught by controller[0]: at Object.Module._extensions..node (internal/modules/cjs/loader.js:1057:18)
    2021-05-01 21:17:22.098 - error: host.raspberrypi Caught by controller[0]: at Module.load (internal/modules/cjs/loader.js:863:32)
    2021-05-01 21:17:22.098 - error: host.raspberrypi Caught by controller[0]: at Function.Module._load (internal/modules/cjs/loader.js:708:14)
    2021-05-01 21:17:22.099 - error: host.raspberrypi Caught by controller[0]: at Module.require (internal/modules/cjs/loader.js:887:19)
    2021-05-01 21:17:22.099 - error: host.raspberrypi Caught by controller[0]: at require (internal/modules/cjs/helpers.js:74:18)
    2021-05-01 21:17:22.099 - error: host.raspberrypi Caught by controller[0]: at bindings (/opt/iobroker/node_modules/zigbee-herdsman/node_modules/bindings/bindings.js:112:48)
    2021-05-01 21:17:22.099 - error: host.raspberrypi Caught by controller[0]: at Object. (/opt/iobroker/node_modules/zigbee-herdsman/node_modules/@serialport/bindings/lib/linux.js:2:36)
    2021-05-01 21:17:22.099 - error: host.raspberrypi Caught by controller[0]: at Module._compile (internal/modules/cjs/loader.js:999:30)
    2021-05-01 21:17:22.099 - error: host.raspberrypi Caught by controller[0]: at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
    2021-05-01 21:17:22.099 - error: host.raspberrypi Caught by controller[0]: at Module.load (internal/modules/cjs/loader.js:863:32)
    2021-05-01 21:17:22.100 - error: host.raspberrypi instance system.adapter.zigbee.1 terminated with code 1 (JS_CONTROLLER_STOPPED)
    

    Daraufhin habe ich npm install --production in /opt/iobroker/node_modules/serialport/node_modules/@serialport/bindings ausgeführt.

    Zigbee.0 ist grün, Zigbee.1 bleibt auf gelb.

    Es kommt Folgendes (hab mal alles kopiert, keine Ahnung was wichtig ist...):

    2021-05-02 09:29:30.152 - error: zigbee.1 (26947) Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch().
    2021-05-02 09:29:30.153 - error: zigbee.1 (26947) unhandled promise rejection: Cannot read property 'getEntries' of null
    2021-05-02 09:29:30.155 - error: zigbee.1 (26947) TypeError: Cannot read property 'getEntries' of null
    at Function.loadFromDatabaseIfNecessary (/opt/iobroker/node_modules/iobroker.zigbee/node_modules/zigbee-herdsman/dist/controller/model/device.js:221:55)
    at Function.all (/opt/iobroker/node_modules/iobroker.zigbee/node_modules/zigbee-herdsman/dist/controller/model/device.js:241:16)
    at Controller.getDevices (/opt/iobroker/node_modules/iobroker.zigbee/node_modules/zigbee-herdsman/dist/controller/controller.js:289:31)
    at ZigbeeController.getClients (/opt/iobroker/node_modules/iobroker.zigbee/lib/zigbeecontroller.js:206:49)
    at DeviceAvailability.stop (/opt/iobroker/node_modules/iobroker.zigbee/lib/zbDeviceAvailability.js:222:43)
    at ZigbeeController.callExtensionMethod (/opt/iobroker/node_modules/iobroker.zigbee/lib/zigbeecontroller.js:192:42)
    at ZigbeeController.stop (/opt/iobroker/node_modules/iobroker.zigbee/lib/zigbeecontroller.js:310:20)
    at Zigbee.onUnload (/opt/iobroker/node_modules/iobroker.zigbee/main.js:581:41)
    at Zigbee.emit (events.js:314:20)
    at stop (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:8620:22)
    2021-05-02 09:29:30.156 - error: zigbee.1 (26947) Cannot read property 'getEntries' of null
    2021-05-02 09:29:31.145 - info: host.raspberrypi stopInstance system.adapter.zigbee.1 killing pid 26947
    2021-05-02 09:29:32.520 - info: host.raspberrypi "system.adapter.zigbee.1" enabled
    2021-05-02 09:29:32.554 - info: host.raspberrypi instance system.adapter.zigbee.1 started with pid 11723
    2021-05-02 09:29:34.829 - error: zigbee.1 (11723) zigbee.1 already running
    2021-05-02 09:29:34.832 - warn: zigbee.1 (11723) Terminated (ADAPTER_ALREADY_RUNNING): Without reason
    2021-05-02 09:29:35.423 - error: host.raspberrypi instance system.adapter.zigbee.1 terminated with code 7 (ADAPTER_ALREADY_RUNNING)
    2021-05-02 09:29:35.424 - info: host.raspberrypi Restart adapter system.adapter.zigbee.1 because enabled
    2021-05-02 09:29:35.784 - error: host.raspberrypi instance system.adapter.zigbee.1 terminated by request of the instance itself and will not be restarted, before user restarts it.
    2021-05-02 09:29:35.784 - info: host.raspberrypi Do not restart adapter system.adapter.zigbee.1 because desired by instance
    2021-05-02 09:30:05.470 - info: host.raspberrypi instance system.adapter.zigbee.1 started with pid 11737
    2021-05-02 09:30:08.265 - info: zigbee.1 (11737) starting. Version 1.4.4 in /opt/iobroker/node_modules/iobroker.zigbee, node: v12.22.1, js-controller: 3.2.16
    2021-05-02 09:30:08.366 - info: zigbee.1 (11737) Starting Zigbee npm ...
    2021-05-02 09:30:08.921 - info: zigbee.1 (11737) Installed Version: iobroker.zigbee@1.4.4
    2021-05-02 09:30:11.604 - info: host.raspberrypi Updating repository "stable" under "http://download.iobroker.net/sources-dist.json"
    2021-05-02 09:30:48.540 - error: zigbee.1 (11737) Failed to start Zigbee
    2021-05-02 09:30:48.543 - error: zigbee.1 (11737) Error: Failed to connect to the adapter (Error: SRSP - SYS - ping after 6000ms)
    at ZStackAdapter. (/opt/iobroker/node_modules/iobroker.zigbee/node_modules/zigbee-herdsman/dist/adapter/z-stack/adapter/zStackAdapter.js:94:31)
    at Generator.throw ()
    at rejected (/opt/iobroker/node_modules/iobroker.zigbee/node_modules/zigbee-herdsman/dist/adapter/z-stack/adapter/zStackAdapter.js:25:65)
    2021-05-02 09:30:58.546 - info: zigbee.1 (11737) Try to reconnect. 1 attempts left
    2021-05-02 09:30:58.548 - info: zigbee.1 (11737) Starting Zigbee npm ...
    2021-05-02 09:30:58.592 - info: zigbee.1 (11737) Installed Version: iobroker.zigbee@1.4.4
    2021-05-02 09:31:03.854 - error: zigbee.1 (11737) Failed to start Zigbee
    2021-05-02 09:31:03.856 - error: zigbee.1 (11737) Error: Error while opening serialport 'Error: Error Resource temporarily unavailable Cannot lock port'
    at Znp. (/opt/iobroker/node_modules/iobroker.zigbee/node_modules/zigbee-herdsman/dist/adapter/z-stack/znp/znp.js:136:32)
    at Generator.next ()
    at /opt/iobroker/node_modules/iobroker.zigbee/node_modules/zigbee-herdsman/dist/adapter/z-stack/znp/znp.js:27:71
    at new Promise ()
    at __awaiter (/opt/iobroker/node_modules/iobroker.zigbee/node_modules/zigbee-herdsman/dist/adapter/z-stack/znp/znp.js:23:12)
    at SerialPort. (/opt/iobroker/node_modules/iobroker.zigbee/node_modules/zigbee-herdsman/dist/adapter/z-stack/znp/znp.js:134:49)
    at SerialPort._error (/opt/iobroker/node_modules/iobroker.zigbee/node_modules/zigbee-herdsman/node_modules/@serialport/stream/lib/index.js:198:14)
    at /opt/iobroker/node_modules/iobroker.zigbee/node_modules/zigbee-herdsman/node_modules/@serialport/stream/lib/index.js:242:12
    2021-05-02 09:37:16.246 - info: host.raspberrypi "system.adapter.zigbee.1" disabled
    2021-05-02 09:37:16.258 - info: host.raspberrypi stopInstance system.adapter.zigbee.1 (force=false, process=true)
    2021-05-02 09:37:16.268 - info: zigbee.1 (11737) Got terminate signal TERMINATE_YOURSELF
    2021-05-02 09:37:16.268 - info: host.raspberrypi stopInstance system.adapter.zigbee.1 send kill signal
    2021-05-02 09:37:16.270 - info: zigbee.1 (11737) cleaned everything up...
    2021-05-02 09:37:16.277 - info: zigbee.1 (11737) Zigbee: disabling joining new devices.
    2021-05-02 09:37:16.280 - warn: zigbee.1 (11737) Failed to stop zigbee during startup
    2021-05-02 09:37:16.281 - info: zigbee.1 (11737) terminating
    2021-05-02 09:37:16.283 - info: zigbee.1 (11737) Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason
    2021-05-02 09:37:16.285 - error: zigbee.1 (11737) Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch().
    2021-05-02 09:37:16.286 - error: zigbee.1 (11737) unhandled promise rejection: Cannot read property 'getEntries' of null
    2021-05-02 09:37:16.292 - error: zigbee.1 (11737) TypeError: Cannot read property 'getEntries' of null
    at Function.loadFromDatabaseIfNecessary (/opt/iobroker/node_modules/iobroker.zigbee/node_modules/zigbee-herdsman/dist/controller/model/device.js:221:55)
    at Function.all (/opt/iobroker/node_modules/iobroker.zigbee/node_modules/zigbee-herdsman/dist/controller/model/device.js:241:16)
    at Controller.getDevices (/opt/iobroker/node_modules/iobroker.zigbee/node_modules/zigbee-herdsman/dist/controller/controller.js:289:31)
    at ZigbeeController.getClients (/opt/iobroker/node_modules/iobroker.zigbee/lib/zigbeecontroller.js:206:49)
    at DeviceAvailability.stop (/opt/iobroker/node_modules/iobroker.zigbee/lib/zbDeviceAvailability.js:222:43)
    at ZigbeeController.callExtensionMethod (/opt/iobroker/node_modules/iobroker.zigbee/lib/zigbeecontroller.js:192:42)
    at ZigbeeController.stop (/opt/iobroker/node_modules/iobroker.zigbee/lib/zigbeecontroller.js:310:20)
    at Zigbee.onUnload (/opt/iobroker/node_modules/iobroker.zigbee/main.js:581:41)
    at Zigbee.emit (events.js:314:20)
    at stop (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:8620:22)
    2021-05-02 09:37:16.292 - error: zigbee.1 (11737) Cannot read property 'getEntries' of null
    2021-05-02 09:37:17.277 - info: host.raspberrypi stopInstance system.adapter.zigbee.1 killing pid 11737
    2021-05-02 09:37:18.707 - info: host.raspberrypi "system.adapter.zigbee.1" enabled
    2021-05-02 09:37:18.763 - info: host.raspberrypi instance system.adapter.zigbee.1 started with pid 12125
    2021-05-02 09:37:20.991 - error: zigbee.1 (12125) zigbee.1 already running
    2021-05-02 09:37:20.993 - warn: zigbee.1 (12125) Terminated (ADAPTER_ALREADY_RUNNING): Without reason
    2021-05-02 09:37:21.589 - error: host.raspberrypi instance system.adapter.zigbee.1 terminated with code 7 (ADAPTER_ALREADY_RUNNING)
    2021-05-02 09:37:21.590 - info: host.raspberrypi Restart adapter system.adapter.zigbee.1 because enabled
    2021-05-02 09:37:21.598 - info: javascript.0 (23961) script.js.Eigene_Skripte.##on_log_-_Überwachung_und_telegram: ERROR an telegram gesendet
    2021-05-02 09:37:21.906 - error: host.raspberrypi instance system.adapter.zigbee.1 terminated by request of the instance itself and will not be restarted, before user restarts it.
    2021-05-02 09:37:21.907 - info: host.raspberrypi Do not restart adapter system.adapter.zigbee.1 because desired by instance
    2021-05-02 09:37:48.558 - info: host.raspberrypi "system.adapter.zigbee.0" disabled
    2021-05-02 09:37:48.562 - info: host.raspberrypi stopInstance system.adapter.zigbee.0 (force=false, process=true)
    2021-05-02 09:37:48.580 - info: host.raspberrypi stopInstance system.adapter.zigbee.0 send kill signal
    2021-05-02 09:37:48.578 - info: zigbee.0 (25626) Got terminate signal TERMINATE_YOURSELF
    2021-05-02 09:37:48.581 - info: zigbee.0 (25626) cleaned everything up...
    2021-05-02 09:37:48.586 - info: zigbee.0 (25626) Zigbee: disabling joining new devices.
    2021-05-02 09:37:48.871 - info: zigbee.0 (25626) terminating
    2021-05-02 09:37:48.872 - info: zigbee.0 (25626) Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason
    2021-05-02 09:37:49.496 - info: host.raspberrypi instance system.adapter.zigbee.0 terminated with code 11 (ADAPTER_REQUESTED_TERMINATION)
    2021-05-02 09:37:49.860 - info: host.raspberrypi "system.adapter.zigbee.1" disabled
    2021-05-02 09:37:54.304 - error: zigbee.1 (12144) adapter disabled
    2021-05-02 09:37:54.323 - warn: zigbee.1 (12144) Terminated (NO_ADAPTER_CONFIG_FOUND): Without reason
    2021-05-02 09:37:54.930 - error: host.raspberrypi instance system.adapter.zigbee.1 terminated with code 3 (NO_ADAPTER_CONFIG_FOUND)
    2021-05-02 09:37:54.931 - info: host.raspberrypi Do not restart adapter system.adapter.zigbee.1 because disabled or deleted
    2021-05-02 09:37:57.145 - info: host.raspberrypi "system.adapter.zigbee.0" enabled
    2021-05-02 09:37:57.197 - info: host.raspberrypi instance system.adapter.zigbee.0 started with pid 12174
    2021-05-02 09:37:58.011 - info: host.raspberrypi "system.adapter.zigbee.1" enabled
    2021-05-02 09:37:58.053 - info: host.raspberrypi instance system.adapter.zigbee.1 started with pid 12181
    2021-05-02 09:37:59.855 - info: zigbee.0 (12174) starting. Version 1.4.4 in /opt/iobroker/node_modules/iobroker.zigbee, node: v12.22.1, js-controller: 3.2.16
    2021-05-02 09:37:59.966 - info: zigbee.0 (12174) Starting Zigbee npm ...
    2021-05-02 09:38:00.629 - info: zigbee.0 (12174) Installed Version: iobroker.zigbee@1.4.4
    2021-05-02 09:38:00.910 - info: zigbee.1 (12181) starting. Version 1.4.4 in /opt/iobroker/node_modules/iobroker.zigbee, node: v12.22.1, js-controller: 3.2.16
    2021-05-02 09:38:01.013 - info: zigbee.1 (12181) Starting Zigbee npm ...
    2021-05-02 09:38:01.576 - info: zigbee.1 (12181) Installed Version: iobroker.zigbee@1.4.4
    2021-05-02 09:38:02.235 - info: zigbee.0 (12174) Coordinator firmware version: {"type":"zStack30x","meta":{"transportrev":2,"product":2,"majorrel":2,"minorrel":7,"maintrel":2,"revision":20200211}}
    2021-05-02 09:38:02.239 - info: zigbee.0 (12174) Disable LED
    2021-05-02 09:38:02.242 - info: zigbee.0 (12174) --> transmitPower : normal
    2021-05-02 09:38:02.249 - info: zigbee.0 (12174) Currently 5 devices are joined:
    2021-05-02 09:38:02.280 - info: zigbee.0 (12174) Configuring 0x04cf8cdf3c7759af lumi.sen_ill.mgl01
    2021-05-02 09:38:02.288 - info: zigbee.0 (12174) 0x00158d0004094af0 (addr 26820): WXKG02LM_rev2 - Xiaomi Aqara double key wireless wall switch (2018 model) (EndDevice)
    2021-05-02 09:38:02.291 - info: zigbee.0 (12174) 0xd0cf5efffe1194fb (addr 36701): ICPSHC24-30EU-IL-1 - IKEA TRADFRI driver for wireless control (30 watt) (Router)
    2021-05-02 09:38:02.293 - info: zigbee.0 (12174) 0x680ae2fffe9178f4 (addr 28525): ICPSHC24-10EU-IL-1 - IKEA TRADFRI driver for wireless control (10 watt) (Router)
    2021-05-02 09:38:02.294 - info: zigbee.0 (12174) 0x04cf8cdf3c7759af (addr 65466): GZCGQ01LM - Xiaomi MiJia light intensity sensor (EndDevice)
    2021-05-02 09:38:02.296 - info: zigbee.0 (12174) 0x00158d00027d7fb3 (addr 27291): WXKG11LM - Xiaomi Aqara wireless switch (EndDevice)
    2021-05-02 09:38:02.297 - info: zigbee.0 (12174) Zigbee started
    2021-05-02 09:38:12.313 - warn: zigbee.0 (12174) DeviceConfigure failed 0x04cf8cdf3c7759af lumi.sen_ill.mgl01, attempt 1 (Error: Bind 0x04cf8cdf3c7759af/1 genPowerCfg from '0x00124b00062d5b84/1' failed (AREQ - ZDO - bindRsp after 10000ms)
    at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.zigbee/node_modules/zigbee-herdsman/dist/utils/waitress.js:37:35)
    at listOnTimeout (internal/timers.js:554:17)
    at processTimers (internal/timers.js:497:7))
    2021-05-02 09:38:41.177 - error: zigbee.1 (12181) Failed to start Zigbee
    2021-05-02 09:38:41.179 - error: zigbee.1 (12181) Error: Failed to connect to the adapter (Error: SRSP - SYS - ping after 6000ms)
    at ZStackAdapter. (/opt/iobroker/node_modules/iobroker.zigbee/node_modules/zigbee-herdsman/dist/adapter/z-stack/adapter/zStackAdapter.js:94:31)
    at Generator.throw ()
    at rejected (/opt/iobroker/node_modules/iobroker.zigbee/node_modules/zigbee-herdsman/dist/adapter/z-stack/adapter/zStackAdapter.js:25:65)
    2021-05-02 09:38:41.184 - info: javascript.0 (23961) script.js.Eigene_Skripte.##on_log_-_Überwachung_und_telegram: ERROR an telegram gesendet
    2021-05-02 09:38:41.187 - info: javascript.0 (23961) script.js.Eigene_Skripte.##on_log_-_Überwachung_und_telegram: ERROR an telegram gesendet
    2021-05-02 09:38:51.181 - info: zigbee.1 (12181) Try to reconnect. 1 attempts left
    2021-05-02 09:38:51.183 - info: zigbee.1 (12181) Starting Zigbee npm ...
    2021-05-02 09:38:51.230 - info: zigbee.1 (12181) Installed Version: iobroker.zigbee@1.4.4
    2021-05-02 09:38:56.494 - error: zigbee.1 (12181) Failed to start Zigbee
    2021-05-02 09:38:56.496 - error: zigbee.1 (12181) Error: Error while opening serialport 'Error: Error Resource temporarily unavailable Cannot lock port'
    
    apollon77A Online
    apollon77A Online
    apollon77
    schrieb am zuletzt editiert von
    #44

    @kaifu sagte in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:

    Zigbee ging mit Warten grundsätzlich auch. Ich habe allerdings 2 Zigbee Instanzen und die zweite macht Ärger:

    Der Fehler kommt vom Adapter, bitte dort melden. Zum Grund kann ich nichts sagen. Wenn eine tut ...

    Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

    • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
    • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
    1 Antwort Letzte Antwort
    0
    • T Offline
      T Offline
      TheChicken
      schrieb am zuletzt editiert von
      #45

      Für Windowsuser: Ich habe mir das Paket von hier https://nodejs.org/dist/latest-v12.x/ geholt (node-v12.22.1-win-x64.zip), auf den Zielrechner kopiert und entpackt. Dann via iobroker-cmd

      ioborker stop
      

      und dann im Installationsverzeichnis von iobroker den Ordner nodejs als Backup umbenannt. Danach einen neue Ordner nodejs erstellt und die entpackten Dateien da rein kopiert. Im Anschluss wieder

      ioborker start
      

      -> Kontrolle, läuft alles und node.js ist jetzt v12.22.1.

      A 1 Antwort Letzte Antwort
      4
      • apollon77A apollon77

        MOD-EDIT: Diese Anleitung ist veraltet. Update und Fix der nodejs Installation ist mittlerweile in dem Befehl iob nodejs-update enthalten

        Hi,

        in diesem Artikel möchte ich einen Überblick geben, wie inzwischen (meint anno 2021 mit einem js-controller 3.x bzw 4.x) Node.js Updates bei ioBroker ausgeführt werden sollten bzw können.

        Was ist Node.js und warum muss man es updaten?

        Node.js ist die Laufzeitumgebung der Programmiersprache JavaScript, in der ioBroker geschrieben ist. Ohne Node.js funktioniert ioBroker nicht. Node.js hast Du initial selbst installiert oder der ioBroker-Installer hat dies für dich getan.

        Wie bei vielen Open-Source-Technologien üblich, entwickelt sich Node.js schnell weiter. Kleinere Updates, die die Stabilität und Sicherheit steigern oder gar neue Funktionen hinzufügen, erscheinen regelmäßig.

        Node.js-Versionen mit gerader Hauptversionsnummer werden als LTS-Versionen (Long Term Support) bezeichnet und einige Jahre gepflegt (z.B. 12.x). Jedes Jahr kommt eine neue Version ins LTS - in diesem Jahr (2021) ist das Node.js 16, welche im April veröffentlicht wurde und ab Oktober 2021 eine LTS Version wird.

        Im gleichem Zug erreichen frühere LTS-Versionen ihr Lebensende (EOL, End of Life). So hat Node.js 8 im April 2020 den EOL-Status erhalten und bekommt damit keine Updates mehr, Nodejs 10.x wird Ende April 2021 Ihr Lebensende erreichen. Es wird also keine Sicherheits-Updates mehr geben! Node.js 12.x wird im April 2022 eol geben.

        Alle Node.js-Versionen mit ungeraden Versionsnummern sind Entwicklungsversionen und sollten nicht produktiv genutzt werden.

        ioBroker nutzt viele Module und Erweiterungen aus der JavaScript Open-Source Szene, und dort kommt es regelmäßig vor, dass Versionen die EOL gehen zeitnah danach auch nicht weiter unterstützt werden. Das hat im ersten Schritt keine echte Auswirkung, aber mittelfristig wird es also Adapter, und später auch den js-controller geben, der EOL Versionen von Node.js nicht mehr unterstützt.

        Node.js 10 wird mit dem js-controller 3.x voll unterstützt. Ab dem js-controller 4.0 (Februar 2022) ist Node.js 10.x nicht mehr untertsützt.

        Auf welche Node.js Version updaten?

        Aktuell empfiehlt ioBroker die Nutzung von Node.js 16.x.

        Folgende Adapter haben momentan Probleme mit Node.js 14:

        • jeelink

        Folgende Adapter haben momentan Probleme mit Node.js 16:

        • jeelink?

        *Node.js 16.x wird auch vom js-controller 3.3 grundsätzlich unterstützt, aber nur mit npm 6! npm 7 bzw 8 sind mit dem js-controller 4.0 nutzbar.

        Update vorbereiten

        Node.js Version prüfen

        Bevor man beginnt, sollte man in der Befehlszeile mit dem Befehl

        node -v
        

        überprüfen, welche Version von Node.js gerade installiert ist. Eine gute Idee ist es, diese Versionsangabe auch mit der Node.js-Version im Übersichts-Fenster des ioBroker-Admins für diesen Host zu vergleichen. Sollten sich die Versionen unterscheiden, sind mehrere Node.js-Varianten installiert, was zu Problemen führen kann. Diese Probleme müssen VOR dem Update dann behoben werden! Anleitung zB unter https://forum.iobroker.net/topic/35090/howto-nodejs-installation-und-upgrades-unter-debian/2

        Betriebssystem prüfen

        Dann auch prüfen was man für ein Betriebssystem hat. Vor allem im Raspi Umfeld sind gern auch älterer Systeme auf basis von "Debian jessie" oder "Debian wheezy" im Einsatz. Für die gibt es nichts was höher ist als Nodejs 10, da steht dann ggf auch ein Betriebssystemupdate an, was wir hier aber nicht behandeln können.
        Unterstützte Linux Distributionen sind unter https://github.com/nodesource/distributions#debian-and-ubuntu-based-distributions aufgelistet.
        Unter Debian und Ubuntu gibt es mit lsb_release -a eine Ausgabe was man aktuell nutzt.

        js-controller Version prüfen

        Weiterhin bitte prüfen welche js-controller Version Installiert ist (ebenfalls auf dem Host-Tab im Admin einsehbar).
        Bei Versionen VOR js-controller 3.x, wenn möglich bitte zuerst den js-controller aktualisieren. Am besten auf mindestens die 3.2! Hierzu gibt es extra Threads im Forum wie z.B. https://forum.iobroker.net/topic/42385/js-controller-3-2-jetzt-im-stable bzw https://forum.iobroker.net/topic/52886/js-controller-4-0-x-jetzt-für-alle-user-im-stable

        Adapter aktualisieren

        Damit es nach dem Update zu keinen Inkompatibilitäten oder Probleme kommt, sollte man alle Adapter prüfen und aktualisieren. Vor allem Adapter mit nativen Bestandteilen, wie alles mit Serialport oder Bluetooth können Probleme bereiten. Hier am besten die Adapter-Readme's per Admin oder im GitHub prüfen, ob neue Versionen zur Verfügung stehen die die geplante Node.js Version explizit erst unterstützen.

        Bei Updates wo es größere Versionssprünge bei npm gibt (zb Node.js 14->16 updated npm von 6.x auf 8.x) kann es sehr hilfreich sein wenn man schaut ob Adapter die von GitHub installiert wurden inzwischen in der gleichen version auf auf npm liegen und dann ggf von dort nochmals installieren oder updaten. Im Admin werden Adapter die per GitHub installiert wurden gesondert mit einem GitHub Symbol angezeigt. Das hilft auch im Vorfeld Probleme zu vermeiden.

        Wenn man diesen Schritt nicht durchführt kann es zu unnötigen Problemen beim update der Adapter kommen!

        Backup erstellen

        Zuerst muss natürlich unbedingt ein Backup erstellt werden. Dazu kann z.B. der BackItUp-Adapter genutzt oder der Kommandozeilenbefehl

        cd /opt/iobroker
        iobroker backup
        

        ausgeführt werden. Das Backup sollte aktuell sein, damit möglichst keine Daten verloren gehen.

        Node.js updaten

        Für Windows-Systeme kann ich leider gerade nichts genaues sagen, wir schauen das wir das noch ergänzen. Aufruf an die Community: Wer Schritte hat gern als eigener Post oder hier einbringen 🙂 Danke
        Einen Post aus der Community gab es dazu: https://forum.iobroker.net/post/624003

        Linux-Systeme

        ioBroker stoppen
        Zuerst ioBroker stoppen, damit Updates keine Nebeneffekte oder Abstürze verursachen.

        iobroker stop
        

        Bitte anschließend im Webbrowser prüfen, dass der ioBroker-Admin danach wirklich nicht mehr läuft. Sollte er weiterhin aufrufbar sein, dann den Rechner neu starten und nochmals „iobroker stop“ ausführen und erneut testen. Für die Techniker unter uns: Man kann auch mit einem Tool wie "top" prüfen, ob noch Prozesse existieren, die mit "io." beginnen. Die dann am besten mit einem beherzten "sudo kill -9 <ProzessID>" zwangsbeenden.

        Node.js updaten
        Jetzt aktualisiert man Node.js auf die gewünschte neue Version.

        Unter Linux reicht es, dazu den Nodesource-Installationsbefehl für das jeweilige Betriebssystem auszuführen. Verschiedene Varianten (auch Root und Nicht-Root) sind unter https://github.com/nodesource/distributions#debinstall gelistet.

        Zum Beispiel lauten die Befehle für einen Raspberry Pi der ein Debian bzw. Raspbian-Image verwendet wie folgt, wenn man nicht als root-User (z.B. richtig mit dem User "pi") angemeldet ist:

        curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
        sudo apt install -y nodejs
        

        Für Node.js 16 einfach in der URL oben anstelle der 14 eine 16 reinschreiben.

        Für macOS gibt einen Installer auf https://nodejs.org/en/download/ , den man einfach ausführt.

        Ob die Aktualisierung geklappt hat, kann man wieder mit dem Befehl

        node -v
        

        überprüfen.

        Auch die npm Version sollte mit

        npm -v
        

        geprüft werden. Mit einem js-controller <4 sicherstellen das idealerweise keine 7.x/8.x von npm installiert ist!

        ioBroker fixer ausführen
        Da die Installation von Node.js einige Einstellungen am System verändert haben kann, ist es jetzt ratsam, den ioBroker-Installationsfixer aufzurufen. Das geschieht mit dem Befehl

        iobroker fix
        

        Er stellt unter anderem die für den Betrieb von ioBroker notwendigen Sicherheitseinstellungen wieder her und prüft und korrigiert alle Berechtigungen. Das kann einen Augenblick dauern, bitte Geduld haben.

        Erster ioBroker Neustart NACH Update

        Einige genutzte JavaScript Module haben binäre Teile, welche bei einem Node.js Update nicht mehr kompatibel sind und neu erstellt werden müssen.

        Automatische Rebuilds

        ioBroker versucht seit dem js-controller 3.0 automatisch die Adapter zu erkennen die nicht starten weil Sie aktualisiert werden müssen. Dies funktioniert so das die typischen Fehlermeldungen erkannt werden und ioBroker dann die Aktualisierung versucht.

        js-controller 3.x
        Zuerst wird ein "rebuild" des betroffenen Adapters ausgeführt, falls das nicht hilft werden die Adapter-Abhängigkeiten aktualisiert.

        js-controller 4.0
        Zuerst wird versucht alle Adapter zu rebuilden, falls das nicht hilft wird versucht zielgerichtet die relevanten Module neu zu bauen.

        Daher kann es sein das der Adapter mehrfach ersucht wird neu zu starten. Hier bitte UNBEDINGT Geduld haben! Erst wenn der Adapter dauerhaft rot bleibt und auch im Log steht das der Rebuild nicht geklappt hat aktiv werden!

        Bei einigen Adaptern (zB iot die optionale native Abhängigkeiten haben) funktioniert die automatische Erkennung nicht und das rebuild muss manuell angestoßen werden. Dies kann dadurch erkannt werden das der Adapter "Rot" bleibt und nicht startet oder einzelne Funktionen nicht gehen und das als Fehler im Log steht. Dann sollte das Log geprüft werden (neben Admin stehen Logfiles auch unter /opt/iobroker/log/... zur Verfügung.

        Manuelle Rebuilds

        Hier zu gibt es iobroker rebuild, bzw die Kommandos die im Log angezeigt werden falls der Automatische Rebuild nicht funktioniert.

        Sonderfälle (z.B. Serialport)

        Leider gibt es Sonderfälle, wo auch die obigen Optionen das Rebuild nicht erledigen, einer davon ist Serialport.

        Dort kann ein Log zB (auch nach allen Rebuild Versuchen) wie folgt aussehen

        host.SmartHomeCenter | 2020-05-10 09:28:01.788 | error | Caught by controller[0]: }
        host.SmartHomeCenter | 2020-05-10 09:28:01.788 | error | Caught by controller[0]: ]
        host.SmartHomeCenter | 2020-05-10 09:28:01.788 | error | Caught by controller[0]: '/opt/iobroker/node_modules/serialport/compiled/12.16.3/linux/arm/serialport.node'
        host.SmartHomeCenter | 2020-05-10 09:28:01.787 | error | Caught by controller[0]: '/opt/iobroker/node_modules/serialport/build/default/serialport.node',
        host.SmartHomeCenter | 2020-05-10 09:28:01.787 | error | Caught by controller[0]: '/opt/iobroker/node_modules/serialport/Release/serialport.node',
        host.SmartHomeCenter | 2020-05-10 09:28:01.787 | error | Caught by controller[0]: '/opt/iobroker/node_modules/serialport/out/Release/serialport.node',
        host.SmartHomeCenter | 2020-05-10 09:28:01.787 | error | Caught by controller[0]: '/opt/iobroker/node_modules/serialport/Debug/serialport.node',
        host.SmartHomeCenter | 2020-05-10 09:28:01.787 | error | Caught by controller[0]: '/opt/iobroker/node_modules/serialport/out/Debug/serialport.node',
        host.SmartHomeCenter | 2020-05-10 09:28:01.786 | error | Caught by controller[0]: '/opt/iobroker/node_modules/serialport/build/Release/serialport.node',
        host.SmartHomeCenter | 2020-05-10 09:28:01.786 | error | Caught by controller[0]: '/opt/iobroker/node_modules/serialport/build/Debug/serialport.node',
        host.SmartHomeCenter | 2020-05-10 09:28:01.786 | error | Caught by controller[0]: '/opt/iobroker/node_modules/serialport/build/serialport.node',
        host.SmartHomeCenter | 2020-05-10 09:28:01.786 | error | Caught by controller[0]: tries: [
        host.SmartHomeCenter | 2020-05-10 09:28:01.786 | error | Caught by controller[0]: at Module._compile (internal/modules/cjs/loader.js:1133:30) {
        host.SmartHomeCenter | 2020-05-10 09:28:01.785 | error | Caught by controller[0]: at Object. (/opt/iobroker/node_modules/serialport/lib/bindings/auto-detect.js:16:22)
        host.SmartHomeCenter | 2020-05-10 09:28:01.785 | error | Caught by controller[0]: at require (internal/modules/cjs/helpers.js:77:18)
        host.SmartHomeCenter | 2020-05-10 09:28:01.785 | error | Caught by controller[0]: at Module.require (internal/modules/cjs/loader.js:1019:19)
        host.SmartHomeCenter | 2020-05-10 09:28:01.785 | error | Caught by controller[0]: at Function.Module._load (internal/modules/cjs/loader.js:877:14)
        host.SmartHomeCenter | 2020-05-10 09:28:01.785 | error | Caught by controller[0]: at Module.load (internal/modules/cjs/loader.js:977:32)
        host.SmartHomeCenter | 2020-05-10 09:28:01.784 | error | Caught by controller[0]: at Object.Module._extensions..js (internal/modules/cjs/loader.js:1153:10)
        host.SmartHomeCenter | 2020-05-10 09:28:01.784 | error | Caught by controller[0]: at Module._compile (internal/modules/cjs/loader.js:1133:30)
        host.SmartHomeCenter | 2020-05-10 09:28:01.784 | error | Caught by controller[0]: at Object. (/opt/iobroker/node_modules/serialport/lib/bindings/linux.js:2:36)
        host.SmartHomeCenter | 2020-05-10 09:28:01.784 | error | Caught by controller[0]: at bindings (/opt/iobroker/node_modules/serialport/node_modules/bindings/bindings.js:93:9)
        host.SmartHomeCenter | 2020-05-10 09:28:01.783 | error | Caught by controller[0]: → /opt/iobroker/node_modules/serialport/compiled/12.16.3/linux/arm/serialport.node
        host.SmartHomeCenter | 2020-05-10 09:28:01.783 | error | Caught by controller[0]: → /opt/iobroker/node_modules/serialport/build/default/serialport.node
        host.SmartHomeCenter | 2020-05-10 09:28:01.783 | error | Caught by controller[0]: → /opt/iobroker/node_modules/serialport/Release/serialport.node
        host.SmartHomeCenter | 2020-05-10 09:28:01.783 | error | Caught by controller[0]: → /opt/iobroker/node_modules/serialport/out/Release/serialport.node
        host.SmartHomeCenter | 2020-05-10 09:28:01.782 | error | Caught by controller[0]: → /opt/iobroker/node_modules/serialport/Debug/serialport.node
        host.SmartHomeCenter | 2020-05-10 09:28:01.782 | error | Caught by controller[0]: → /opt/iobroker/node_modules/serialport/out/Debug/serialport.node
        host.SmartHomeCenter | 2020-05-10 09:28:01.782 | error | Caught by controller[0]: → /opt/iobroker/node_modules/serialport/build/Release/serialport.node
        host.SmartHomeCenter | 2020-05-10 09:28:01.782 | error | Caught by controller[0]: → /opt/iobroker/node_modules/serialport/build/Debug/serialport.node
        host.SmartHomeCenter | 2020-05-10 09:28:01.781 | error | Caught by controller[0]: → /opt/iobroker/node_modules/serialport/build/serialport.node
        host.SmartHomeCenter | 2020-05-10 09:28:01.781 | error | Caught by controller[0]: Error: Could not locate the bindings file. Tried:
        host.SmartHomeCenter | 2020-05-10 09:28:01.781 | error | Caught by controller[0]: ^
        host.SmartHomeCenter | 2020-05-10 09:28:01.780 | error | Caught by controller[0]: throw err
        host.SmartHomeCenter | 2020-05-10 09:28:01.780 | error | Caught by controller[0]: /opt/iobroker/node_modules/serialport/node_modules/bindings/bindings.js:96
        

        Es gibt auch andere Fehlermeldungen die aber alle auf das gleiche hinauslaufen.
        Die einfachste Option ist es dann manuell im richtigen Verzeichnis neu zu bauen.
        In dem Fall das Verzeichenis mit "bindings" suchen - oben ist das /opt/iobroker/node_modules/serialport/node_modules/bindings ... bei neueren Versionen kann es auch etwas wie /opt/iobroker/node_modules/serialport/node_modules/@serialport/bindings sein.
        Dann in dieses Verzeichnis wechseln und npm install --production ausführen. Danach den Adapter nochmal sneu starten, das sollte dann tun.

        Ein weiterer Fall sind Adapter mit canvas Modul (ggf echarts oder Mihome-vacuum) wo es Probleme gebe kann.

        Andere Sonderfälle muss man sich im Detail ansehen. Bitte unten Posten und wir unterstützen.

        Weitere Notfall Optionen

        Im früheren Artikel unter https://forum.iobroker.net/topic/22867/how-to-node-js-für-iobroker-richtig-updaten sind noch weitere manuelle Möglichkeiten beschrieben ioBroker wieder zum laufen zu bekommen, aber diese sollten an sich nicht mehr nötig sein, gehen aber natürlich auch noch!
        Dieser Artikel gilt also auch weiterhin.

        Jetzt viel Erfolg und gebt bitte Feedback wie git es geklappt hat oder welche Probleme Ihr habt.

        Ingo

        U Offline
        U Offline
        usn09750
        schrieb am zuletzt editiert von
        #46

        Danke für die Anleitung. Bei mir kommt folgende Ausgabe:
        nodejs.jpg
        Für mich leider unerklärlich. Kann jemand helfen?

        Thomas BraunT 1 Antwort Letzte Antwort
        0
        • U usn09750

          Danke für die Anleitung. Bei mir kommt folgende Ausgabe:
          nodejs.jpg
          Für mich leider unerklärlich. Kann jemand helfen?

          Thomas BraunT Online
          Thomas BraunT Online
          Thomas Braun
          Most Active
          schrieb am zuletzt editiert von Thomas Braun
          #47

          @usn09750

          Für mich leider unerklärlich. Kann jemand helfen?

          Ja. Kann ich.
          nodeJS offenbar doppelt installiert.
          Einmal richtig über apt, einmal an apt vorbei manuell ins System gedonnert.

          In meiner Signatur findest du eine Anleitung, wie man das korrigiert.

          Bitte von KonsolenTEXT keine Bilder schießen, sondern den TEXT auch als TEXT (in CodeTags eingebettet) ins Forum kopieren.

          Linux-Werkzeugkasten:
          https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
          NodeJS Fixer Skript:
          https://forum.iobroker.net/topic/68035/iob-node-fix-skript
          iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

          U 1 Antwort Letzte Antwort
          1
          • Thomas BraunT Thomas Braun

            @usn09750

            Für mich leider unerklärlich. Kann jemand helfen?

            Ja. Kann ich.
            nodeJS offenbar doppelt installiert.
            Einmal richtig über apt, einmal an apt vorbei manuell ins System gedonnert.

            In meiner Signatur findest du eine Anleitung, wie man das korrigiert.

            Bitte von KonsolenTEXT keine Bilder schießen, sondern den TEXT auch als TEXT (in CodeTags eingebettet) ins Forum kopieren.

            U Offline
            U Offline
            usn09750
            schrieb am zuletzt editiert von
            #48

            @thomas-braun Perfekt - hat geklappt! Danke Dir für die schnelle Hilfe

            1 Antwort Letzte Antwort
            0
            • H Offline
              H Offline
              heinzix
              schrieb am zuletzt editiert von
              #49

              Super Anleitung,
              hat alles einwandfrei geklappt

              1 Antwort Letzte Antwort
              0
              • T TheChicken

                Für Windowsuser: Ich habe mir das Paket von hier https://nodejs.org/dist/latest-v12.x/ geholt (node-v12.22.1-win-x64.zip), auf den Zielrechner kopiert und entpackt. Dann via iobroker-cmd

                ioborker stop
                

                und dann im Installationsverzeichnis von iobroker den Ordner nodejs als Backup umbenannt. Danach einen neue Ordner nodejs erstellt und die entpackten Dateien da rein kopiert. Im Anschluss wieder

                ioborker start
                

                -> Kontrolle, läuft alles und node.js ist jetzt v12.22.1.

                A Offline
                A Offline
                aleks-83
                schrieb am zuletzt editiert von
                #50

                @thechicken sagte in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:

                Für Windowsuser: Ich habe mir das Paket von hier https://nodejs.org/dist/latest-v12.x/ geholt (node-v12.22.1-win-x64.zip), auf den Zielrechner kopiert und entpackt. Dann via iobroker-cmd

                ioborker stop
                

                und dann im Installationsverzeichnis von iobroker den Ordner nodejs als Backup umbenannt. Danach einen neue Ordner nodejs erstellt und die entpackten Dateien da rein kopiert. Im Anschluss wieder

                ioborker start
                

                -> Kontrolle, läuft alles und node.js ist jetzt v12.22.1.

                Hier sei noch erwähnt, dass man die Datei nodevars.bat vor dem Update sichern sollte, und nach dem Update zurück kopiert.
                Danke @Alexi für den Tipp.

                = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
                = Node.js v20.18.3 = NPM 10.2.3 = JS Controller 7.0.6 =

                Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
                Glasfaser 400

                C 1 Antwort Letzte Antwort
                0
                • A Offline
                  A Offline
                  aleks-83
                  schrieb am zuletzt editiert von aleks-83
                  #51

                  Seit dem Upgrade meines Win10 Systems auf Node.js 12.22.1 und NPM 6.14.12 (JS Controller 3.3.10) kann ich nicht mehr alle Adapter updaten.

                  $ ./iobroker upgrade
                  Update hue from @3.5.2 to @3.5.15
                  NPM version: 6.14.12
                  npm install iobroker.hue@3.5.15 --loglevel error (System call)
                  npm ERR! code EBUSY
                  npm ERR! syscall rmdir
                  npm ERR! path D:\ioBroker\NUCubuntu\node_modules\iobroker.hue
                  npm ERR! errno -4082
                  npm ERR! EBUSY: resource busy or locked, rmdir 'D:\ioBroker\NUCubuntu\node_modules\iobroker.hue'
                  
                  npm ERR! A complete log of this run can be found in:
                  npm ERR!     C:\WINDOWS\ServiceProfiles\iobroker(NUCubuntu)\AppData\Roaming\npm-cache\_logs\2021-05-30T18_31_29_382Z-debug.log
                  ERROR: host.NUC(NUCubuntu) Cannot install iobroker.hue@3.5.15: 4294963214
                  ERROR: process exited with code 25
                  

                   $ ./iobroker upgrade denon
                  Update denon from @1.10.4 to @1.10.7
                  NPM version: 6.14.12
                  npm install iobroker.denon@1.10.7 --loglevel error (System call)
                  npm ERR! code EBUSY
                  npm ERR! syscall rmdir
                  npm ERR! path D:\ioBroker\NUCubuntu\node_modules\iobroker.denon
                  npm ERR! errno -4082
                  npm ERR! EBUSY: resource busy or locked, rmdir 'D:\ioBroker\NUCubuntu\node_modules\iobroker.denon'
                  
                  npm ERR! A complete log of this run can be found in:
                  npm ERR!     C:\WINDOWS\ServiceProfiles\iobroker(NUCubuntu)\AppData\Roaming\npm-cache\_logs\2021-05-30T18_34_25_810Z-debug.log
                  ERROR: host.NUC(NUCubuntu) Cannot install iobroker.denon@1.10.7: 4294963214
                  ERROR: process exited with code 25
                  

                  Die interessante Zeile wird wohl sein:

                  npm ERR! EBUSY: resource busy or locked
                  

                  Was bedeutet das?

                  Und wenn Alexa2.0 startet, findet der Adapter einen Ordner nicht...

                  alexa2.0	2021-05-30 20:35:30.592	error	(5604) Cannot find search "folder" in "system"
                  

                  = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
                  = Node.js v20.18.3 = NPM 10.2.3 = JS Controller 7.0.6 =

                  Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
                  Glasfaser 400

                  apollon77A 1 Antwort Letzte Antwort
                  0
                  • A aleks-83

                    Seit dem Upgrade meines Win10 Systems auf Node.js 12.22.1 und NPM 6.14.12 (JS Controller 3.3.10) kann ich nicht mehr alle Adapter updaten.

                    $ ./iobroker upgrade
                    Update hue from @3.5.2 to @3.5.15
                    NPM version: 6.14.12
                    npm install iobroker.hue@3.5.15 --loglevel error (System call)
                    npm ERR! code EBUSY
                    npm ERR! syscall rmdir
                    npm ERR! path D:\ioBroker\NUCubuntu\node_modules\iobroker.hue
                    npm ERR! errno -4082
                    npm ERR! EBUSY: resource busy or locked, rmdir 'D:\ioBroker\NUCubuntu\node_modules\iobroker.hue'
                    
                    npm ERR! A complete log of this run can be found in:
                    npm ERR!     C:\WINDOWS\ServiceProfiles\iobroker(NUCubuntu)\AppData\Roaming\npm-cache\_logs\2021-05-30T18_31_29_382Z-debug.log
                    ERROR: host.NUC(NUCubuntu) Cannot install iobroker.hue@3.5.15: 4294963214
                    ERROR: process exited with code 25
                    

                     $ ./iobroker upgrade denon
                    Update denon from @1.10.4 to @1.10.7
                    NPM version: 6.14.12
                    npm install iobroker.denon@1.10.7 --loglevel error (System call)
                    npm ERR! code EBUSY
                    npm ERR! syscall rmdir
                    npm ERR! path D:\ioBroker\NUCubuntu\node_modules\iobroker.denon
                    npm ERR! errno -4082
                    npm ERR! EBUSY: resource busy or locked, rmdir 'D:\ioBroker\NUCubuntu\node_modules\iobroker.denon'
                    
                    npm ERR! A complete log of this run can be found in:
                    npm ERR!     C:\WINDOWS\ServiceProfiles\iobroker(NUCubuntu)\AppData\Roaming\npm-cache\_logs\2021-05-30T18_34_25_810Z-debug.log
                    ERROR: host.NUC(NUCubuntu) Cannot install iobroker.denon@1.10.7: 4294963214
                    ERROR: process exited with code 25
                    

                    Die interessante Zeile wird wohl sein:

                    npm ERR! EBUSY: resource busy or locked
                    

                    Was bedeutet das?

                    Und wenn Alexa2.0 startet, findet der Adapter einen Ordner nicht...

                    alexa2.0	2021-05-30 20:35:30.592	error	(5604) Cannot find search "folder" in "system"
                    
                    apollon77A Online
                    apollon77A Online
                    apollon77
                    schrieb am zuletzt editiert von
                    #52

                    @aleks-83 EBUSY: Es scheint wohl so das in bestimmten Fällen Dateien von Windows geblockt werden, sodass npm die nicht aktualisieren kann. Adapter beenden und Update neu versuchen - hat schon mehrfach getan. Ggf iobroker beenden und Dann Update versuchen.

                    Zu Den "cannot search folder": welcher js-controller? Bitte mal "iobroker setup first" aufrufen

                    Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                    • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                    • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                    A 1 Antwort Letzte Antwort
                    1
                    • apollon77A apollon77

                      @aleks-83 EBUSY: Es scheint wohl so das in bestimmten Fällen Dateien von Windows geblockt werden, sodass npm die nicht aktualisieren kann. Adapter beenden und Update neu versuchen - hat schon mehrfach getan. Ggf iobroker beenden und Dann Update versuchen.

                      Zu Den "cannot search folder": welcher js-controller? Bitte mal "iobroker setup first" aufrufen

                      A Offline
                      A Offline
                      aleks-83
                      schrieb am zuletzt editiert von
                      #53

                      @apollon77 sagte:

                      EBUSY: Es scheint wohl so das in bestimmten Fällen Dateien von Windows geblockt werden, sodass npm die nicht aktualisieren kann. Adapter beenden und Update neu versuchen.

                      Hat geholfen. Danke

                      Zu Den "cannot search folder": welcher js-controller? Bitte mal "iobroker setup first" aufrufen

                      JS-Controller ist 3.3.10 (wie bereits oben geschrieben 😉 )

                      Was tut denn "iobroker setup first"?
                      Installiert oder ändert es etwas am System oder gibt es nur Hilfe für die ersten Schritte mit ioBroker?
                      Ich habe nur diese ioBroker Installation. Ist also mein Produktivsystem.

                      = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
                      = Node.js v20.18.3 = NPM 10.2.3 = JS Controller 7.0.6 =

                      Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
                      Glasfaser 400

                      Thomas BraunT apollon77A 2 Antworten Letzte Antwort
                      0
                      • A aleks-83

                        @apollon77 sagte:

                        EBUSY: Es scheint wohl so das in bestimmten Fällen Dateien von Windows geblockt werden, sodass npm die nicht aktualisieren kann. Adapter beenden und Update neu versuchen.

                        Hat geholfen. Danke

                        Zu Den "cannot search folder": welcher js-controller? Bitte mal "iobroker setup first" aufrufen

                        JS-Controller ist 3.3.10 (wie bereits oben geschrieben 😉 )

                        Was tut denn "iobroker setup first"?
                        Installiert oder ändert es etwas am System oder gibt es nur Hilfe für die ersten Schritte mit ioBroker?
                        Ich habe nur diese ioBroker Installation. Ist also mein Produktivsystem.

                        Thomas BraunT Online
                        Thomas BraunT Online
                        Thomas Braun
                        Most Active
                        schrieb am zuletzt editiert von
                        #54

                        @aleks-83 sagte in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:

                        Ist also mein Produktivsystem.

                        Das dann aus dem Beta-Kanal zu füttern ist auch 'mutig'.

                        ibroker setup first
                        setzt bestimmte Dateien auf den Stand nach der initialen Installation. Da ist bei dir vermutlich etwas schief gelaufen.

                        Linux-Werkzeugkasten:
                        https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                        NodeJS Fixer Skript:
                        https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                        iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                        A 1 Antwort Letzte Antwort
                        0
                        • Thomas BraunT Thomas Braun

                          @aleks-83 sagte in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:

                          Ist also mein Produktivsystem.

                          Das dann aus dem Beta-Kanal zu füttern ist auch 'mutig'.

                          ibroker setup first
                          setzt bestimmte Dateien auf den Stand nach der initialen Installation. Da ist bei dir vermutlich etwas schief gelaufen.

                          A Offline
                          A Offline
                          aleks-83
                          schrieb am zuletzt editiert von
                          #55

                          @thomas-braun sagte in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:

                          @aleks-83 sagte in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:

                          Ist also mein Produktivsystem.

                          Das dann aus dem Beta-Kanal zu füttern ist auch 'mutig'.

                          Das war mir nicht bewusst dass es ein Beta-Kanal ist.
                          Da der User geschrieben hatte dass er sein Update darüber gemacht hat, und es bei hm funktioniert, habe ich es auch gemacht.
                          Im Nachhinein leichtsinnig, aber als Windows user muss man leider immer wieder schauen wo man bleibt.
                          Updates oder Hilfestellungen sind hier nicht so häufig vertreten wie unter Linux.
                          Ein paar Adapter hatten schon angekündigt, mit meiner alten node.js 10 Version nicht mehr zu funktionieren, daher war ich gezwungen ein Upgrade auszuführen.

                          ibroker setup first
                          setzt bestimmte Dateien auf den Stand nach der initialen Installation. Da ist bei dir vermutlich etwas schief gelaufen.

                          OK, danke für die Erklärung.
                          Also meinst du, ich kann das so gefahrlos ausführen!?

                          = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
                          = Node.js v20.18.3 = NPM 10.2.3 = JS Controller 7.0.6 =

                          Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
                          Glasfaser 400

                          Thomas BraunT 1 Antwort Letzte Antwort
                          0
                          • A aleks-83

                            @thomas-braun sagte in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:

                            @aleks-83 sagte in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:

                            Ist also mein Produktivsystem.

                            Das dann aus dem Beta-Kanal zu füttern ist auch 'mutig'.

                            Das war mir nicht bewusst dass es ein Beta-Kanal ist.
                            Da der User geschrieben hatte dass er sein Update darüber gemacht hat, und es bei hm funktioniert, habe ich es auch gemacht.
                            Im Nachhinein leichtsinnig, aber als Windows user muss man leider immer wieder schauen wo man bleibt.
                            Updates oder Hilfestellungen sind hier nicht so häufig vertreten wie unter Linux.
                            Ein paar Adapter hatten schon angekündigt, mit meiner alten node.js 10 Version nicht mehr zu funktionieren, daher war ich gezwungen ein Upgrade auszuführen.

                            ibroker setup first
                            setzt bestimmte Dateien auf den Stand nach der initialen Installation. Da ist bei dir vermutlich etwas schief gelaufen.

                            OK, danke für die Erklärung.
                            Also meinst du, ich kann das so gefahrlos ausführen!?

                            Thomas BraunT Online
                            Thomas BraunT Online
                            Thomas Braun
                            Most Active
                            schrieb am zuletzt editiert von Thomas Braun
                            #56

                            @aleks-83 sagte in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:

                            Also meinst du, ich kann das so gefahrlos ausführen!?

                            Keine Ahnung. Bin Linuxer. 🙂

                            My system is running linux therefore it runs fine

                            Linux-Werkzeugkasten:
                            https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                            NodeJS Fixer Skript:
                            https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                            iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                            1 Antwort Letzte Antwort
                            1
                            • A aleks-83

                              @apollon77 sagte:

                              EBUSY: Es scheint wohl so das in bestimmten Fällen Dateien von Windows geblockt werden, sodass npm die nicht aktualisieren kann. Adapter beenden und Update neu versuchen.

                              Hat geholfen. Danke

                              Zu Den "cannot search folder": welcher js-controller? Bitte mal "iobroker setup first" aufrufen

                              JS-Controller ist 3.3.10 (wie bereits oben geschrieben 😉 )

                              Was tut denn "iobroker setup first"?
                              Installiert oder ändert es etwas am System oder gibt es nur Hilfe für die ersten Schritte mit ioBroker?
                              Ich habe nur diese ioBroker Installation. Ist also mein Produktivsystem.

                              apollon77A Online
                              apollon77A Online
                              apollon77
                              schrieb am zuletzt editiert von
                              #57

                              @aleks-83 "setup first" wird auch bei jedem controller Update ausgeführt. Ist also ungefährlich. Das stellt sicher das bestimmte Systeminterne Metadaten korrekt sind - Früher gab es zB den "folder" typ in einem internen View nicht und der wurde hinzugefügt. Wenn der bei Dir fehlt sollte das Kommando das fixen.

                              Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                              • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                              • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                              1 Antwort Letzte Antwort
                              1
                              • caravandriverC Offline
                                caravandriverC Offline
                                caravandriver
                                schrieb am zuletzt editiert von
                                #58

                                Ich erhalte nun folgende Meldung wenn ich den Admin öffne:

                                This adapter cannot be installed directly from github.
                                You must install it from npm.
                                Write for that "npm install iobroker.admin" in according directory.

                                Thomas BraunT 1 Antwort Letzte Antwort
                                0
                                • caravandriverC caravandriver

                                  Ich erhalte nun folgende Meldung wenn ich den Admin öffne:

                                  This adapter cannot be installed directly from github.
                                  You must install it from npm.
                                  Write for that "npm install iobroker.admin" in according directory.

                                  Thomas BraunT Online
                                  Thomas BraunT Online
                                  Thomas Braun
                                  Most Active
                                  schrieb am zuletzt editiert von Thomas Braun
                                  #59

                                  @caravandriver Wo steht denn das du den Admin über GitHub installieren sollst?

                                  cd /opt/iobroker
                                  npm list
                                  iobroker list adapters
                                  

                                  Und ist deine nodeJS-Installation noch so krumm wie sie es im April schon war?

                                  Linux-Werkzeugkasten:
                                  https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                                  NodeJS Fixer Skript:
                                  https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                                  iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                                  1 Antwort Letzte Antwort
                                  0
                                  • T Offline
                                    T Offline
                                    TheAriba
                                    schrieb am zuletzt editiert von
                                    #60

                                    Hallo zusammen,

                                    Was ist passiert? Ich habe fälschlicherweise (dachte ich muss Node updaten da es mir rot im Admin angezeigt worden ist und einige Adapter kein Update annehmen wollten) Node.js upgedated auf node v15.9.0 .

                                    npm ist bei 7.5.3 und Admin bei 4.2.1.

                                    So nun funktioniert der Javascript Adapter nicht mehr. Und alle Skripte sind außerfunktion.

                                    Nun wollte ich eine node 12.x Version drüberinstallieren, das wird aber nicht angenommen.

                                    sudo apt-get install -y nodejs
                                    Reading package lists... Done
                                    Building dependency tree
                                    Reading state information... Done
                                    nodejs is already the newest version (15.9.0-1nodesource1).
                                    0 upgraded, 0 newly installed, 0 to remove and 131 not upgraded.
                                    

                                    Kann mir bitte jemand helfen? Mein "Smart Home" ist nicht mehr "Smart". 😞
                                    Besten Dank vorab!

                                    Thomas BraunT 1 Antwort Letzte Antwort
                                    0
                                    • T TheAriba

                                      Hallo zusammen,

                                      Was ist passiert? Ich habe fälschlicherweise (dachte ich muss Node updaten da es mir rot im Admin angezeigt worden ist und einige Adapter kein Update annehmen wollten) Node.js upgedated auf node v15.9.0 .

                                      npm ist bei 7.5.3 und Admin bei 4.2.1.

                                      So nun funktioniert der Javascript Adapter nicht mehr. Und alle Skripte sind außerfunktion.

                                      Nun wollte ich eine node 12.x Version drüberinstallieren, das wird aber nicht angenommen.

                                      sudo apt-get install -y nodejs
                                      Reading package lists... Done
                                      Building dependency tree
                                      Reading state information... Done
                                      nodejs is already the newest version (15.9.0-1nodesource1).
                                      0 upgraded, 0 newly installed, 0 to remove and 131 not upgraded.
                                      

                                      Kann mir bitte jemand helfen? Mein "Smart Home" ist nicht mehr "Smart". 😞
                                      Besten Dank vorab!

                                      Thomas BraunT Online
                                      Thomas BraunT Online
                                      Thomas Braun
                                      Most Active
                                      schrieb am zuletzt editiert von
                                      #61

                                      @theariba
                                      Schau in meiner Signatur wie man das repariert.

                                      Linux-Werkzeugkasten:
                                      https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                                      NodeJS Fixer Skript:
                                      https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                                      iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                                      T 1 Antwort Letzte Antwort
                                      0
                                      • Thomas BraunT Thomas Braun

                                        @theariba
                                        Schau in meiner Signatur wie man das repariert.

                                        T Offline
                                        T Offline
                                        TheAriba
                                        schrieb am zuletzt editiert von
                                        #62

                                        @thomas-braun Du meinst Teil 2: Installationen geradeziehen ?
                                        Muss ich vorher etwas beachten? Wie finde ich den Pfad zur falschen Datei?

                                        which nodejs node npm && nodejs -v && node -v && npm -v && apt policy nodejs
                                        /usr/bin/nodejs
                                        /usr/bin/node
                                        /usr/bin/npm
                                        v15.9.0
                                        v15.9.0
                                        7.5.3
                                        nodejs:
                                          Installed: 15.9.0-1nodesource1
                                          Candidate: 15.9.0-1nodesource1
                                          Version table:
                                         *** 15.9.0-1nodesource1 100
                                                100 /var/lib/dpkg/status
                                             12.22.2-1nodesource1 500
                                                500 https://deb.nodesource.com/node_12.x buster/main armhf Packages
                                             10.24.0~dfsg-1~deb10u1 500
                                                500 http://raspbian.raspberrypi.org/raspbian buster/main armhf Packages
                                        
                                        Thomas BraunT 1 Antwort Letzte Antwort
                                        0
                                        • T TheAriba

                                          @thomas-braun Du meinst Teil 2: Installationen geradeziehen ?
                                          Muss ich vorher etwas beachten? Wie finde ich den Pfad zur falschen Datei?

                                          which nodejs node npm && nodejs -v && node -v && npm -v && apt policy nodejs
                                          /usr/bin/nodejs
                                          /usr/bin/node
                                          /usr/bin/npm
                                          v15.9.0
                                          v15.9.0
                                          7.5.3
                                          nodejs:
                                            Installed: 15.9.0-1nodesource1
                                            Candidate: 15.9.0-1nodesource1
                                            Version table:
                                           *** 15.9.0-1nodesource1 100
                                                  100 /var/lib/dpkg/status
                                               12.22.2-1nodesource1 500
                                                  500 https://deb.nodesource.com/node_12.x buster/main armhf Packages
                                               10.24.0~dfsg-1~deb10u1 500
                                                  500 http://raspbian.raspberrypi.org/raspbian buster/main armhf Packages
                                          
                                          Thomas BraunT Online
                                          Thomas BraunT Online
                                          Thomas Braun
                                          Most Active
                                          schrieb am zuletzt editiert von Thomas Braun
                                          #63

                                          @theariba sagte in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:

                                          12.22.2-1nodesource1

                                          Du hast das irgendwie ohne Quelle am Paketmanager vorbei manuell reingeballert. (Oder das 15er-Repo jetzt wieder deaktiviert).

                                          sudo apt install nodejs=12.22.2-1nodesource1
                                          

                                          sollte aber genug sein um wieder auf den stabilen Zweig zu hüpfen.

                                          Linux-Werkzeugkasten:
                                          https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                                          NodeJS Fixer Skript:
                                          https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                                          iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                                          T 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          730

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe