Skip to content
  • Home
  • 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

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. [How-to] Node.js für ioBroker richtig updaten

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 für ioBroker richtig updaten

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
installationlinuxnodenode.jsnodejswindows
1.1k Beiträge 106 Kommentatoren 738.5k Aufrufe 112 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.
  • Thomas BraunT Thomas Braun

    @apollon77 Deswegen habe ich z. B. hier:
    https://forum.iobroker.net/topic/32920/scripte-laufen-nicht-mehr-seit-update-auf-js-controler-3-0x/54
    ein Debian auf sudo umgebaut. Gut, vermutlich liegt es da an node12 (bzw. V8), aber so ist das Grundgerüst schon mal sauberer.

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

    @Thomas-Braun hab’s jetzt nicht im Detail gelesen. an sich baut der installation fixer EinE bestehende „root Installation“ auf eine „saubere“ um ...

    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
    Thomas BraunT 1 Antwort Letzte Antwort
    0
    • apollon77A apollon77

      @Thomas-Braun hab’s jetzt nicht im Detail gelesen. an sich baut der installation fixer EinE bestehende „root Installation“ auf eine „saubere“ um ...

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

      @apollon77 Ich muss mir das fixer skript wohl mal genauer anschauen... :-)

      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

      apollon77A 1 Antwort Letzte Antwort
      0
      • apollon77A apollon77

        @umbm was hat denn sql ins log geschrieben.? An sich sollte es mit dem rebuild tun.

        umbmU Offline
        umbmU Offline
        umbm
        schrieb am zuletzt editiert von
        #513

        @apollon77
        sql hat keine Logeinträge erzeugt, denn er konnte gar nicht erst starten.
        Direkt vor dem Log-Auszug von oben steht nur noch

        info: host.smartserver instance system.adapter.sql.0 started with pid 23870
        

        Danach kommen sofort die Fehler und das wiederholt sich endlos.

        1 Antwort Letzte Antwort
        0
        • Thomas BraunT Thomas Braun

          @apollon77 Ich muss mir das fixer skript wohl mal genauer anschauen... :-)

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

          @Thomas-Braun das Foyer Skript macht das gleiche wie der installer abzüglich der iobroker installation an sich. Und man kann es immer wieder nutzen um sich danach auf dem aktuellen Stand zu bleiben was den „Systemzeit“ angeht.

          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
          Thomas BraunT 1 Antwort Letzte Antwort
          0
          • apollon77A apollon77

            @Thomas-Braun das Foyer Skript macht das gleiche wie der installer abzüglich der iobroker installation an sich. Und man kann es immer wieder nutzen um sich danach auf dem aktuellen Stand zu bleiben was den „Systemzeit“ angeht.

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

            @apollon77 Was meinst du mit 'Systemzeit'?

            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

            apollon77A 1 Antwort Letzte Antwort
            0
            • Thomas BraunT Thomas Braun

              @apollon77 Was meinst du mit 'Systemzeit'?

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

              @Thomas-Braun typo :-( sollte systemzustand heissen

              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
              • MathiasJM Offline
                MathiasJM Offline
                MathiasJ
                schrieb am zuletzt editiert von
                #517

                .....und wieder etwas dazu gelernt:
                Ich hatte NodeJS 12.16.2 auf dem Slave und dem Master.
                ich habe beide Systeme mit

                sudo apt-get update && sudo apt-get upgrade
                

                upgedatet, damit ich die Version 12.16.3 bekomme.
                Die Instanz ble auf dem Slave blieb gelb
                Die Instanz radar2 auf dem Master blieb rot.

                Neustart hat nichts gebracht, Shutdown hat nichts gebracht.
                Aber wahrscheinlich muß man die Abhängigkeiten wieder herstellen mit:

                sudo apt-get install libcap2-bin arp-scan bluetooth bluez libbluetooth-dev libudev-dev
                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`)
                

                Nun laufen beide Instanzen wieder.
                Gruß,
                Mathias

                IObroker auf dem NUC als VM.
                Da ich noch keine Aktoren habe, wird momentan via Radar nur der AB der Fritzbox ein- und ausgeschaltet.
                Welches Smarthome-System es letztendlich wird, weiß ich noch nicht. Vielleicht kommen auch nur Zigbee-Geräte ins Haus.

                J 1 Antwort Letzte Antwort
                0
                • MathiasJM MathiasJ

                  .....und wieder etwas dazu gelernt:
                  Ich hatte NodeJS 12.16.2 auf dem Slave und dem Master.
                  ich habe beide Systeme mit

                  sudo apt-get update && sudo apt-get upgrade
                  

                  upgedatet, damit ich die Version 12.16.3 bekomme.
                  Die Instanz ble auf dem Slave blieb gelb
                  Die Instanz radar2 auf dem Master blieb rot.

                  Neustart hat nichts gebracht, Shutdown hat nichts gebracht.
                  Aber wahrscheinlich muß man die Abhängigkeiten wieder herstellen mit:

                  sudo apt-get install libcap2-bin arp-scan bluetooth bluez libbluetooth-dev libudev-dev
                  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`)
                  

                  Nun laufen beide Instanzen wieder.
                  Gruß,
                  Mathias

                  J Offline
                  J Offline
                  Jan1
                  schrieb am zuletzt editiert von
                  #518

                  @MathiasJ
                  BLE muss nach einem Node Update immer mit dem Fixer gerichtet werden, da Rechte verloren gehen, ob das bei Radar auch der Fall ist weiß ich nicht.

                  1 Antwort Letzte Antwort
                  0
                  • MathiasJM Offline
                    MathiasJM Offline
                    MathiasJ
                    schrieb am zuletzt editiert von
                    #519

                    ok.......
                    naja egal. mit allem, was ih gemacht habe funzt es nun auch wieder.
                    komisch: beim Update von node 10.x auf Node 12.16.2 sprangen beide Instanzen sofort an.

                    IObroker auf dem NUC als VM.
                    Da ich noch keine Aktoren habe, wird momentan via Radar nur der AB der Fritzbox ein- und ausgeschaltet.
                    Welches Smarthome-System es letztendlich wird, weiß ich noch nicht. Vielleicht kommen auch nur Zigbee-Geräte ins Haus.

                    J 1 Antwort Letzte Antwort
                    0
                    • MathiasJM MathiasJ

                      ok.......
                      naja egal. mit allem, was ih gemacht habe funzt es nun auch wieder.
                      komisch: beim Update von node 10.x auf Node 12.16.2 sprangen beide Instanzen sofort an.

                      J Offline
                      J Offline
                      Jan1
                      schrieb am zuletzt editiert von
                      #520

                      @MathiasJ
                      Das würde mich beim BLE fast wundern, da der bei mir noch nie ein Node Update überlebt hat. Das steht aber auch irgendwo, dass man nach dem Node Update den Fixer laufen lassen sollte, was dann eben auch gleich das BLE Problem behebt. Im Grunde ist es auch keine schlechte Idee den Fixer laufen zu lassen, wenn etwas rum zickt. Es schadet nicht und wenn das schon reicht um das Problem zu lösen wars das schon, ansonten gehts eben hier weiter ;-)

                      1 Antwort Letzte Antwort
                      0
                      • apollon77A apollon77

                        @stenmic neeee alles gut irgendein Adapter hat einn optionales natives Modul was nicht baut. Da fehlen glaube nur paar Linux Pakete. @Thomas-Braun nicht überinterpretieren. Ist eine node Paket Meldung und nix vom Linux.

                        S Nicht stören
                        S Nicht stören
                        stenmic
                        schrieb am zuletzt editiert von
                        #521

                        @apollon77 danke

                        1 Antwort Letzte Antwort
                        0
                        • W Offline
                          W Offline
                          Wing.Stefan
                          schrieb am zuletzt editiert von
                          #522

                          Hallo, leider immer das selbe spiel.
                          NODE.JS Updaten und Synology Docker. Jedesmal stunden damits klappt, jetzt wo der sprung von 10 auf 12 geht, gehts leider überhaupt nicht.
                          gibt es eine anleitung die 100% immer unter synology und docker iobroker funktionionert

                          @andre @haselchen
                          DANKE

                          von mir aus nimm ich auch eine neuinstall direkt auf der synology in kauf, diese docker sachen sind sowieso nur umständlich und funktionieren die halbe zeit nicht. warum leute davon schwärmen verstehe ich bis heute nicht

                          Thomas BraunT GlasfaserG 2 Antworten Letzte Antwort
                          0
                          • W Wing.Stefan

                            Hallo, leider immer das selbe spiel.
                            NODE.JS Updaten und Synology Docker. Jedesmal stunden damits klappt, jetzt wo der sprung von 10 auf 12 geht, gehts leider überhaupt nicht.
                            gibt es eine anleitung die 100% immer unter synology und docker iobroker funktionionert

                            @andre @haselchen
                            DANKE

                            von mir aus nimm ich auch eine neuinstall direkt auf der synology in kauf, diese docker sachen sind sowieso nur umständlich und funktionieren die halbe zeit nicht. warum leute davon schwärmen verstehe ich bis heute nicht

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

                            @maestro Da läuft ein Debian im Docker?
                            Dann müsste das wohl auch per 'apt' ruckzuck gehen.

                            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
                            • W Wing.Stefan

                              Hallo, leider immer das selbe spiel.
                              NODE.JS Updaten und Synology Docker. Jedesmal stunden damits klappt, jetzt wo der sprung von 10 auf 12 geht, gehts leider überhaupt nicht.
                              gibt es eine anleitung die 100% immer unter synology und docker iobroker funktionionert

                              @andre @haselchen
                              DANKE

                              von mir aus nimm ich auch eine neuinstall direkt auf der synology in kauf, diese docker sachen sind sowieso nur umständlich und funktionieren die halbe zeit nicht. warum leute davon schwärmen verstehe ich bis heute nicht

                              GlasfaserG Online
                              GlasfaserG Online
                              Glasfaser
                              schrieb am zuletzt editiert von Glasfaser
                              #524

                              @maestro
                              @Thomas-Braun sagte in [How-to] Node.js für ioBroker richtig updaten:

                              Dann müsste das wohl auch per 'apt' ruckzuck gehen.

                              Richtig ruckzuck :)

                              Update immer so

                              apt-get update
                              
                              apt-get dist-upgrade
                              

                              Wenn nur 10 vorhanden dann :

                              curl -sL https://deb.nodesource.com/setup_12.x | bash -
                              apt install -y nodejs
                              npm rebuild
                              

                              Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                              1 Antwort Letzte Antwort
                              0
                              • W Offline
                                W Offline
                                Wing.Stefan
                                schrieb am zuletzt editiert von
                                #525

                                ISTSituation: Node.js v10.20.1 (Empfohlene Version v12.16.3)
                                ca04f9e2-2e15-471d-b5bc-cee6113b8500-image.png
                                c17d87de-e154-4a69-a4de-6250c5a3d942-image.png
                                fcbe0565-3cbc-435c-a4cd-ea050cb49317-image.png
                                Danach läuft einiges runter zuviel für hier.
                                wobei das hier neu für mich war:
                                curl -sL https://deb.nodesource.com/setup_12.x | bash -
                                apt install -y nodejs
                                npm rebuild

                                Hatte bis jetzt diese Befehle erhalten:
                                e5502130-b810-408e-8e65-8c49bb288355-image.png Du bist im Iobroker Terminal (bash)?
                                Install Node.js
                                apt-get update
                                apt-get upgrade
                                apt-get install curl build-essential
                                curl -sL https://deb.nodesource.com/setup_10.x | sudo bash -
                                apt-get install -y nodejs

                                wobei ich eben das mit dem setup_10 und 12 als unterschied sehe....

                                Aber es hat funktioniert
                                BIG THX @Glasfaser @Thomas-Braun

                                Thomas BraunT 1 Antwort Letzte Antwort
                                0
                                • W Wing.Stefan

                                  ISTSituation: Node.js v10.20.1 (Empfohlene Version v12.16.3)
                                  ca04f9e2-2e15-471d-b5bc-cee6113b8500-image.png
                                  c17d87de-e154-4a69-a4de-6250c5a3d942-image.png
                                  fcbe0565-3cbc-435c-a4cd-ea050cb49317-image.png
                                  Danach läuft einiges runter zuviel für hier.
                                  wobei das hier neu für mich war:
                                  curl -sL https://deb.nodesource.com/setup_12.x | bash -
                                  apt install -y nodejs
                                  npm rebuild

                                  Hatte bis jetzt diese Befehle erhalten:
                                  e5502130-b810-408e-8e65-8c49bb288355-image.png Du bist im Iobroker Terminal (bash)?
                                  Install Node.js
                                  apt-get update
                                  apt-get upgrade
                                  apt-get install curl build-essential
                                  curl -sL https://deb.nodesource.com/setup_10.x | sudo bash -
                                  apt-get install -y nodejs

                                  wobei ich eben das mit dem setup_10 und 12 als unterschied sehe....

                                  Aber es hat funktioniert
                                  BIG THX @Glasfaser @Thomas-Braun

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

                                  @maestro said in [How-to] Node.js für ioBroker richtig updaten:

                                  wobei ich eben das mit dem setup_10 und 12 als unterschied sehe

                                  :-) Das ist die ganze Magie. 2 statt 0 und schon wird aus node 10 eine node 12. :-)

                                  Man kann es auch noch einfacher haben. In der Datei nodesource.list einfach die 10 gegen eine 12 austauschen:

                                  nano /etc/apt/sources.list.d/nodesource.list
                                  apt update
                                  apt upgrade
                                  

                                  Fertig bist du.

                                  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
                                  • StabilostickS Stabilostick

                                    MOD-EDIT: Dieser Thread und insbesondere diese Anleitung ist von 2019 und somit veraltet

                                    aktuell ist
                                    https://forum.iobroker.net/topic/35090/howto-nodejs-installation-und-upgrades-unter-debian


                                    Update März 2023: Die aktuelle Anleitung findet ihr hier : https://forum.iobroker.net/topic/64032/update-nodejs-best-practise-supported-14-16-und-18

                                    1. Einleitung

                                    Node.js ist die Laufzeitumgebung der Programmiersprache JavaScript, in der ioBroker geschrieben ist. Ohne Node.js funktioniert ioBroker nicht.

                                    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 fast wöchentlich.

                                    Node.js-Versionen mit gerader Hauptversionsnummer werden als LTS-Versionen (Long Term Support) bezeichnet und einige Jahre gepflegt (z.B. 8.x). In 2017 war das Node.js 8, 2018 kam Node.js 10, dann 12.x hinzu und im Oktober 2021 wird Node.js 14 den LTS-Status erhalten.

                                    Im gleichem Zug erreichen frühere LTS-Versionen ihr Lebensende (EOL, End of Life). So hat Node.js 6 im April 2019 den EOL-Status erhalten und bekommt damit keine Updates mehr, Nodejs 8.x ist seit November 2019 raus.

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

                                    Auch ioBroker wird stetig weiterentwickelt und nutzt die neuen Funktionen aktueller Node.js-Versionen. Obwohl der ioBroker js-controller mit Versionen 1.4.x bzw. 1.5.x noch Node.js 4 unterstützt, fordern neue Adapter immer häufiger mindestens Node.js 8 als Grundvoraussetzung.

                                    Ab der Version 2.0 des js-controllers (das Freigabedatum ist noch nicht bekannt) sind die Anpassungen so tiefgreifend, dass die Node.js-Versionen 4 und 6 nicht mehr unterstützt werden können.

                                    Ab Version 3.0/3.1 vom Controller, der gerade (Stand 24.4.2020) im Latest Repository ist, wird Nodejs 10.x Minimum sein.

                                    Alle paar Jahre steht also für eine ioBroker-Installation ein Update von Node.js an. Dieser Artikel soll zusammenfassen wir man dazu am besten vorgeht.

                                    2. Wer sollte updaten?

                                    Aktuell empfehlen wir, bei ioBroker-Neuinstallationen mindestens Node.js 10, besser noch 12.x. zu verwenden. Es sind wenige Adapter bekannt, die nicht mit Node 10/12 funktionieren: Details dazu in https://forum.iobroker.net/topic/30561/status-iobroker-und-node-js-12-x

                                    Windows-Anwendern empfehlen wir, auf jeden Fall am Test des neuen Windows-Installers teilzunehmen: https://forum.iobroker.net/post/266623
                                    Der zukünftige Windows-Installer für ioBroker wird eine Funktion erhalten, bestehende Installationen automatisch auf aktuelle js-controller- und Node.js-Versionen zu migrieren, ohne dass man die Kommandozeile bemühen muss.

                                    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.

                                    Grundsätzlich gilt: Sollte das ioBroker-System stabil laufen, muss Node.js auch nicht auf Gedeih und Verderb upgedated werden. Wenn aber die Installation bestimmter Adapter fehlschlägt (wohlmöglich sogar mit entsprechender Fehlermeldung) oder eine Node-Version < 4 für einen js-controller > Version 1.4.x eingesetzt wird, sollte über ein Node.js-Update nachgedacht werden. Es sind auch Probleme für die Node.js-Versionen 8.0 - 8.12 mit volllaufendem RAM bekannt, so dass wir auch hier ein Update empfehlen.

                                    Wie bereits gesagt: Sollte das ioBroker-System stabil laufen und ist die Installation technisch nicht gefordert, muss Node.js auch nicht auf Gedeih und Verderb upgedated werden.

                                    3. Was sollte ich vor dem Update tun?

                                    Hinweis: Falls die Version des js-controllers <= 1.5.12 ist, muss VOR dem Update in den Einstellungen der Admin-Instanz "Verschlüsselung (https) benutzen" ausgeschaltet werden. Das in ioBroker bis dahin integrierte Zertifikat kann zu Problemen beim Starten des Admin bei Node.js-Versionen >= 10 führen.

                                    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. Auch wenn diese Versionen ggf. noch im "Latest" Repository sind muss man diese vorher aktualisieren. Alternativ wartet man mit der ganzen Update-Aktion bis die neuen Versionen im "Stable" Repository sind, schreibt den Entwickler dazu an oder fragt im Forum nach.

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

                                    4. Step-by-step-Anleitung für Unix-Systeme

                                    • 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.

                                    • Anschließend 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 startet. 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 mit einem beherzten "sudo kill -9 <ProzessID>" zwangsbeenden.

                                    • 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 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_10.x | sudo -E bash -
                                      sudo apt-get install -y nodejs
                                      

                                    Für nodejs 12 einfach in der URL oben anstelle der 10 eine 12 reinpacken.

                                    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.

                                    • 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

                                      curl -sL https://iobroker.net/fix.sh | bash -
                                      

                                      Er stellt unter anderem die für den Betrieb von ioBroker notwendigen Sicherheitseinstellungen wieder her.

                                    • Bei einer Aktualisierung von Node.js müssen bereits installierte JavaScript- Module im ioBroker-Ordner aktualisiert werden, da sonst Fehler bei deren Ausführung auftreten.

                                      Um diese zu aktualisieren gibt es mehrere Möglichkeiten:

                                      a) ab js-controller 3.0: Automatischer Rebuild
                                      ioBroker versucht seit dem js-controller 3.0 automatisch 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. Zuerst wird ein "rebuild" des betroffenen Adapters ausgeführt, falls das nicht hilft werden die Adapter-Abhängigkeiten aktualisiert. Daher kann es sein das der Adapter mehrfach ersucht wird neu zu starten. Hier bitte Geduld haben!
                                      Bei einigen Adaptern (zB iot die optionale native Abhängigkeiten haben) funktioniert die automatische Erkennung nicht und das rebuild muss manuell angestoßen werden. Hier zu gibt es iobroker rebuild adaptername und falls das nicht reicht iobroker rebuild adaptername --install. Das einfach manuell ausführen. Damit sollte alles idealerweise automatisiert erledigt sein. Falls hie rirgendetwas gar nicht geht dann helfen die weiteren Optionen.

                                      b) npm rebuild
                                      Der erste Versuch sollte immer mit dem Befehl "npm rebuild" im ioBroker Verzeichnis stattfinden, weil dies am saubersten funktioniert und direkt von der Paketverwaltung ausgeführt wird. Im Idealfall dauert das ein paar Minuten und es könnten ein paar Warnungen gelistet werden.
                                      Falls es aber Fehler gibt, werden wir zusammen versuchen im nächsten Post alle bekannten Fälle mit Ihren Lösungsansätzen zu sammeln. Wenn das funktioniert ist dies der schnellste und sauberste Weg.

                                      c) reinstall-Skript
                                      Sollte das nicht klappen, beinhaltet der js-Controller ein reinstall-Skript ("reinstall.sh" bzw. ab js-controller 1.5.x "reinstall.js"). Dieses Skript erkennt alle installierten ioBroker-Adapter, löscht diese dann aus dem node_modules-Verzeichnis und installiert sie neu. Dieser Ansatz ist etwas aufwändiger als "npm rebuild", erfüllt aber den gleichen Zweck. Das funktioniert generell gut, man sollte den Prozess aber nicht abbrechen. Falls es doch passiert oder es Probleme beim Starten nach dieser Prozedur gibt, dann am besten den Weg im nächsten Punkt wählen.
                                      Das reinstall.sh-Skript welches im js-controller 1.4 mitgeliefert wurde hat ein Formatierungsproblem und muss vorher noch für Linux mit den Befehlen

                                      cd /opt/iobroker
                                      sudo mv reinstall.sh reinstall.dos
                                      sudo tr -d '\r' < reinstall.dos > reinstall.sh
                                      sudo chmod +x reinstall.sh
                                      

                                      korrigiert werden, damit es funktioniert.

                                      d) Reset aller Module in node_modules
                                      Eine weitere Variante, die gründlich ist, aber etwas Zeit kostet, ist der Ansatz einfach alles Alte unter Beibehaltung der Daten und Einstellungen neu zu installieren. Wichtig ist, das iobroker-data Verzeichnis nicht zu verändern. Häufig können mit dieser Vorgehensweise auch andere (verborgene) Installationsfehler repariert werden.

                                      Dazu löscht man zuerst das gesamte node_modules Verzeichnis im ioBroker-Verzeichnis.

                                      cd /opt/iobroker
                                      sudo rm -r node_modules/ 
                                      

                                      Nachdem der Befehl abgesetzt wurde, fragt das Programm, ob in den Ordner "hinabgestiegen" werden soll (sofern es ein tieferer Unterordner ist) und ob der (schreibgeschützte) Ordner wirklich gelöscht werden soll - beides bestätigt man mit "Ja" (j) oder "Yes" (y).

                                      Danach installiert man den Controller in der relevanten Version (hier z.B. 2.2.8 der zum Zeitpunkt des Schreibens die aktuelle "Stable"-Version ist):

                                      npm install iobroker.js-controller@2.2.8 --production
                                      

                                      Anschließend startet man ioBroker.

                                      iobroker start
                                      

                                      ioBroker wird korrekterweise feststellen, dass die Adapter, die er starten will, nicht installiert sind - und diese einfach automatisch nachinstallieren. Je nach System kann dies einige Zeit dauern - gern auch ein paar Stunden (oder bei langsamen SD-Karten die ganze Nacht). Aber danach ist alles aktualisiert. Der Installationsfortschritt ist im Admin im Log-Fenster zu sehen.

                                      Zu beachten ist, dass Adapter, die man manuell von GitHub installiert hat, den Fehler Can not parse null/io-package.json:Error: ENOENT: no suche file or directory ... im ioBroker-Log erzeugen.
                                      Diese Adapter nach Abschluss der automatischen Installationssequenz wie gehabt über das Adapterfenster manuell von GitHub nachinstallieren und nach der Installation die bestehende diesbezügliche Instanz von Hand starten.

                                      Ratsam ist es auch, im Log nach der Installation nach dem Wort yourself zu suchen. Hier werden ggf. npm-Module angezeigt, die nicht automatisch installiert wurden. Sie können/sollten manuell über die Kommandozeile mit npm i <Packetname>@<version>, ausgeführt im iobroker-Ordner, nachinstalliert werden. Dazu zuerst den ioBroker stoppen, npm ausführen und dann den ioBroker wieder starten.

                                      Wenn man dabei npm als root-User per Hand in der Kommandozeile ausgeführt hat, schlage ich zur Korrektur eventueller Berechtigungsfehler vor, vor dem Start von ioBroker das Fixerscript laufen zu lassen.

                                      cd /opt/iobroker
                                      iobroker stop
                                      npm i <Packetname>@<version>
                                      curl -sL https://iobroker.net/fix.sh | bash -
                                      iobroker start
                                      

                                      e) Neuinstallation mit Restore
                                      Eine kleine Abwandlung der letzten Variante ist eine Neuinstallation. Hierbei sichert man das "iobroker-data" Verzeichnis (oder nutzt das Backup von oben). Dann löscht man das gesamte ioBroker-Verzeichnis und nutzt den Installer.

                                      cp -r /opt/iobroker/iobroker-data <Pfad_zum_sicheren_Ort> 
                                      sudo rm -r /opt/iobroker/ 
                                      sudo mkdir /opt/iobroker
                                      cd /opt/iobroker
                                      curl -sL https://iobroker.net/install.sh | bash -
                                      

                                      Direkt danach stoppt man ioBroker wieder (der ja nach der Installation automatisch gestartet wird).

                                      iobroker stop
                                      

                                      Dann löscht man den neu erstellen „iobroker-data“- Ordner und kopiert anschließend das gesicherte alte „iobroker-data“-Verzeichnis mit den darin enthaltenen Datenbanken und Dateien dorthin zurück.

                                      rm -r /opt/iobroker/iobroker-data
                                      cp -r <Pfad_zum_sicheren_Ort> /opt/iobroker/iobroker-data  
                                      

                                      Anschließend wieder ioBroker starten. Der Rest läuft dann wie bei c) und dauert seine Zeit.

                                    5. Zu guter Letzt

                                    Bitte gebt euer Feedback, was bei euch wie gut funktioniert, was ihr immer nutzt und was die Probleme und eure Lösungen sind.

                                    Viele Grüße,
                                    apollon77
                                    stabilostick

                                    S Offline
                                    S Offline
                                    Stefan_1969
                                    schrieb am zuletzt editiert von Stefan_1969
                                    #527

                                    @Stabilostick
                                    Hat bei mir nicht funktioniert ...
                                    Mit dem curl ... aus dem Link für Version 12 wird die Version herunter geladen.
                                    ed313f0a-c1c6-45c7-999e-beda21636b2b-image.png
                                    Mit der zweiten Anweisung erhalte ich die Meldung, dass mit 8.16.1 die neueste Version installiert ist.
                                    46eba477-ea1c-4d6d-8e73-e617cb73767c-image.png
                                    Ein sudo apt-get dist-upgrade habe ich durchgeführt.

                                    Mit den Anweisungen von Stabilostick (01. Juni 2019) lief nichts mehr. Eine Installation Version 12 wurde in der zweiten Anweisung damit quitiert, dass eine Version 4.xxx installiert wurde.

                                    Ich habe jetzt ein Backup der VM zurück gespielt damit wenigstens das System wieder läuft.

                                    526 Beiträge durchzueiern ist mir ein bisschen viel ...
                                    Vielleicht kann mich jemand an die Hand nehmen und helfen?

                                    Vielen Dank - Stefan

                                    ps: das ganze läuft in einer Proxmox-VM 4GB speicher 32 GB HD default-CPU (KVM64)
                                    Proxmox-Version 6.0-4

                                    System: Deban-Version 9 (Stretch)

                                    Adapter sind alle aktuell


                                    ioBroker, grafana, influx, mariaDB, pihole, MotionEye auf proxmox
                                    Geräte: Homematic, Shelly, Sonoff, Gosund, WEMOS

                                    J Thomas BraunT 2 Antworten Letzte Antwort
                                    0
                                    • S Stefan_1969

                                      @Stabilostick
                                      Hat bei mir nicht funktioniert ...
                                      Mit dem curl ... aus dem Link für Version 12 wird die Version herunter geladen.
                                      ed313f0a-c1c6-45c7-999e-beda21636b2b-image.png
                                      Mit der zweiten Anweisung erhalte ich die Meldung, dass mit 8.16.1 die neueste Version installiert ist.
                                      46eba477-ea1c-4d6d-8e73-e617cb73767c-image.png
                                      Ein sudo apt-get dist-upgrade habe ich durchgeführt.

                                      Mit den Anweisungen von Stabilostick (01. Juni 2019) lief nichts mehr. Eine Installation Version 12 wurde in der zweiten Anweisung damit quitiert, dass eine Version 4.xxx installiert wurde.

                                      Ich habe jetzt ein Backup der VM zurück gespielt damit wenigstens das System wieder läuft.

                                      526 Beiträge durchzueiern ist mir ein bisschen viel ...
                                      Vielleicht kann mich jemand an die Hand nehmen und helfen?

                                      Vielen Dank - Stefan

                                      ps: das ganze läuft in einer Proxmox-VM 4GB speicher 32 GB HD default-CPU (KVM64)
                                      Proxmox-Version 6.0-4

                                      System: Deban-Version 9 (Stretch)

                                      Adapter sind alle aktuell

                                      J Offline
                                      J Offline
                                      Jan1
                                      schrieb am zuletzt editiert von
                                      #528

                                      @Stefan_1969
                                      Geht doch mal auf Buster hoch, da ist in der Sourcelist eh Node 10 drin. Dann hast gleich 2 Fliegen mit ein Klappe erschlagen.

                                      S 1 Antwort Letzte Antwort
                                      0
                                      • S Stefan_1969

                                        @Stabilostick
                                        Hat bei mir nicht funktioniert ...
                                        Mit dem curl ... aus dem Link für Version 12 wird die Version herunter geladen.
                                        ed313f0a-c1c6-45c7-999e-beda21636b2b-image.png
                                        Mit der zweiten Anweisung erhalte ich die Meldung, dass mit 8.16.1 die neueste Version installiert ist.
                                        46eba477-ea1c-4d6d-8e73-e617cb73767c-image.png
                                        Ein sudo apt-get dist-upgrade habe ich durchgeführt.

                                        Mit den Anweisungen von Stabilostick (01. Juni 2019) lief nichts mehr. Eine Installation Version 12 wurde in der zweiten Anweisung damit quitiert, dass eine Version 4.xxx installiert wurde.

                                        Ich habe jetzt ein Backup der VM zurück gespielt damit wenigstens das System wieder läuft.

                                        526 Beiträge durchzueiern ist mir ein bisschen viel ...
                                        Vielleicht kann mich jemand an die Hand nehmen und helfen?

                                        Vielen Dank - Stefan

                                        ps: das ganze läuft in einer Proxmox-VM 4GB speicher 32 GB HD default-CPU (KVM64)
                                        Proxmox-Version 6.0-4

                                        System: Deban-Version 9 (Stretch)

                                        Adapter sind alle aktuell

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

                                        @Stefan_1969

                                        lsb_release -a
                                        apt policy nodejs
                                        which node
                                        

                                        Und das ganze NICHT als root, sonder als normaler User.

                                        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
                                        • J Jan1

                                          @Stefan_1969
                                          Geht doch mal auf Buster hoch, da ist in der Sourcelist eh Node 10 drin. Dann hast gleich 2 Fliegen mit ein Klappe erschlagen.

                                          S Offline
                                          S Offline
                                          Stefan_1969
                                          schrieb am zuletzt editiert von
                                          #530

                                          @Jan1 : Vielen Dank für den Tipp! Hat geklappt, läuft wieder! Installiert ist jetzt 10.19.0 auf Buster.
                                          Ein paar Nacharbeiten sind notwendig gewesen, npm musste ich neu installieren.

                                          Möchte ich auf 12.x habe ich jedoch wieder den gleichen Effekt: sudo apt-get install -y nodejs sagt:
                                          2888f6a2-3cf8-4e63-9750-a0ce962adfea-image.png

                                          :confounded:

                                          Viele Grüsse und nochmals Danke
                                          Stefan


                                          ioBroker, grafana, influx, mariaDB, pihole, MotionEye auf proxmox
                                          Geräte: Homematic, Shelly, Sonoff, Gosund, WEMOS

                                          Thomas BraunT 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

                                          422

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

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

                                          • Du hast noch kein Konto? Registrieren

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