Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Probleme bei Update auf Node.js 16.15.1 unter Windows

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    Probleme bei Update auf Node.js 16.15.1 unter Windows

    This topic has been deleted. Only users with topic management privileges can see it.
    • UweRLP
      UweRLP @apollon77 last edited by UweRLP

      @apollon77 Hilft leider nicht wirklich. Ich würde aber mal aus dem Bauch raus sagen ist ein Problem der aktuellen NodeJS 16.18.0.
      Ich werden dann mit dem Update erst mal auf eine neuere NodeJS warten.

      apollon77 1 Reply Last reply Reply Quote 0
      • apollon77
        apollon77 @UweRLP last edited by

        @uwerlp sagte in Probleme bei Update auf Node.js 16.15.1 unter Windows:

        NodeJS 17.8.0.

        ??

        UweRLP 1 Reply Last reply Reply Quote 0
        • UweRLP
          UweRLP @apollon77 last edited by UweRLP

          @apollon77 Sorry meinte 16.18.0

          B 1 Reply Last reply Reply Quote 0
          • B
            Bernd1967 @UweRLP last edited by Bernd1967

            Hab das selbe Problem.
            Bei mir steht folgendes im IOB Log:

            A system error occurred: uv_uptime returned EPERM (operation not permitted)
            SystemError [ERR_SYSTEM_ERROR]: A system error occurred: uv_uptime returned EPERM (operation not permitted)
            at C:\Software\iobroker\SmartHome\node_modules\pidusage\lib\wmic.js:65:34
            at ChildProcess.<anonymous> (C:\Software\iobroker\SmartHome\node_modules\pidusage\lib\bin.js:44:5)
            at ChildProcess.emit (node:events:513:28)
            at maybeClose (node:internal/child_process:1100:16)
            at Socket.<anonymous> (node:internal/child_process:458:11)
            at Socket.emit (node:events:513:28)
            at Pipe.<anonymous> (node:net:301:12)
            object system.meta.uuid cannot be updated: Error: DB closed

            Gibts schon eine Lösung ?

            Nachtrag:
            Hab es jetzt auch mit dem Installer von nodejs gemacht.Vorher den alten iobroker Ordner umbennant und mit "sc delete iobroker(SmartHome)" in der command von Windows den alten Dienst entfernt.
            Dann ioBroker über die node Console mit "npx @iobroker/install" neu installiert (Zielordner muß leer sein). Dies ging dann erstmal schief weil der Port 9001 durch eine java Installation blockiert war, danach lief die Installation durch.
            Anschließend IOB wieder beendet und den "iobroker-data" Ordner von der alten Installation hineinkopiert.
            Dann iob wieder gestartet und in der Firewall noch node.exe und iobroker.exe öffentlich freigeben.
            Im IOBroker wurden dann die Adapter nach und nach wieder installiert.

            UweRLP 1 Reply Last reply Reply Quote 0
            • UweRLP
              UweRLP @Bernd1967 last edited by

              @bernd1967 Habe Das Problem auch mit einer Neuistallation gelöst, bei mir wars dann gleich verbunden mit einem Umzug auf einen anderen Rechner. https://forum.iobroker.net/post/875377
              Habe die neue Installation mitlerweile auf Node.js: v16.18.1, NPM: 8.19.2 geupdated.

              M 1 Reply Last reply Reply Quote 0
              • M
                memme @UweRLP last edited by

                @uwerlp

                Ich hatte auch den fehler bei dem upgrade auf 16.19.0:

                SystemError [ERR_SYSTEM_ERROR]: A system error occurred: uv_uptime returned EPERM (operation not permitted)

                Danke für den tip mit der version 16.17.1. Die tut es auch erstmal. Hoffe der Fehler wird bei den nächsten versionen gefixt.

                1 Reply Last reply Reply Quote 0
                • Gaspode
                  Gaspode last edited by

                  Danke für diesen Thread. Hatte auch heute Morgen ein Update auf 16.19.0 versucht und dann zum Glück den Tipp hier gefunden, 16.17.1 zu versuchen. Jetzt läuft ioBroker erstmal unter 16.17.1.

                  Hat jemand eine plausible Erklärung oder gar eine Idee, wie man das für die Zukunft ohne Neuinstallation in den Griff bekommen könnte?

                  UweRLP 1 Reply Last reply Reply Quote 0
                  • UweRLP
                    UweRLP @Gaspode last edited by UweRLP

                    @gaspode Ich habe mittlerweile auf Node v16.19.0 geupdatet. Wichtig zuvor iobroker zu stoppen. Dann habe ich die alte Node Version deinstalliert und die neue installiert. Läuft...

                    surfer09 Gaspode 2 Replies Last reply Reply Quote 1
                    • surfer09
                      surfer09 @UweRLP last edited by

                      Also ich habe auch vor ein paar Tagen auf die 16.19.0 upgedatet. Ich mache das immer wie folgt:

                      • iobroker Dienst stoppen
                      • Neue Node Version herunterladen (https://nodejs.org/en/download/releases/) und einfach in das gleiche Verzeichnis installieren, wo es vorher auch lag (Standardverzeichnis bei mir: C:\Program Files\nodejs)

                      Ich starte dann nach der Installation einmal den kompletten Server durch, so hat es die letzten Male immer funktioniert bei mir. Die NPM Version hängt ja immer mit an der Node Installation und ist nach der Installation auf 16.19.0 auch auf 8.19.3 gesprungen.

                      1 Reply Last reply Reply Quote 0
                      • Gaspode
                        Gaspode @UweRLP last edited by

                        @uwerlp, @surfer09

                        Das Problem scheint ja nur Instanzen zu betreffen, die mit dem "alten" Installer von @Stabilostick installiert wurden. Da wurde Node.js nicht installiert, sondern wohl nur kopiert. Auf diese Weise kann man auf dem gleichen Rechner mehrere ioBroker Instanzen mit unterschiedlichen Node.js Versionen laufen haben. Es gibt also kein Node.js, das man deinstallieren und neu installieren könnte.
                        Daher musste man Node.js manuell austauschen, und bis Version 16.17.1 hat das auch problemlos funktioniert. Seit 16.18.1 funktioniert das seltsamerweise nicht mehr. die Frage ist: Warum?

                        UweRLP 1 Reply Last reply Reply Quote 0
                        • UweRLP
                          UweRLP @Gaspode last edited by

                          @gaspode sagte in Probleme bei Update auf Node.js 16.15.1 unter Windows:

                          Das Problem scheint ja nur Instanzen zu betreffen, die mit dem "alten" Installer von @Stabilostick installiert wurden.

                          Ja stimmt, bei der alten Installation hatte ich auch das Problem mit dem Node Update. Bin dann umgezogen auf einen neuen Rechner mit neuer Installationsmethode (nicht mehr Instanzen) dort ist das Update wie oben beschrieben dann möglich.

                          1 Reply Last reply Reply Quote 0
                          • Gaspode
                            Gaspode last edited by Gaspode

                            Die Lösung ohne Neuinstallation gibt es hier:
                            https://forum.iobroker.net/post/924525

                            Edit: Das betrifft leider nur die, die Probleme mit Node.js Versionen neuer als 16.17.1 haben. Für das Ausgangsproblem in diesem Thread ist das auch nicht die Lösung. Sorry für die Verwirrung.

                            1 Reply Last reply Reply Quote 1
                            • nik82
                              nik82 Most Active last edited by

                              @gaspode sagte in Probleme bei Update auf Node.js 16.15.1 unter Windows:

                              Die Lösung ohne Neuinstallation gibt es hier:
                              https://forum.iobroker.net/post/924525

                              Hi,
                              da ich jetzt dann meine alte Windows Iobroker Version doch irgendwann mal auf Node 16 bringen will, wollte ich nochmal fragen.
                              Also ich habe ja wie gesagt eine alte Installation, Nodejs wurde nicht mit einer MSI installiert.

                              Wie bist du genau vorgegangen?

                              • ioBroker stoppen
                              • Node.js downloaden und die MSI installieren
                                (In welches Verzeichnis? Das vorhande C:\iobroker\nodjs oder das vorgeschlagene unter c:\programme?)
                              • In Windows das Dienste-Fenster ("Services") als Admin öffnen und den ioBroker Dienst suchen.
                                Eigenschaften des Dienstes öffnen und auf die Seite "Anmelden" wechseln.
                                Dort das Häkchen bei "Lokales Systemkonto" setzen, "Dieses Konto" wird dadurch deselektiert
                              • Iobroker neustarten

                              Danke im Voraus.

                              Gaspode 1 Reply Last reply Reply Quote 0
                              • Gaspode
                                Gaspode @nik82 last edited by

                                @nik82 said in Probleme bei Update auf Node.js 16.15.1 unter Windows:

                                Wie bist du genau vorgegangen?

                                Das hängt davon ab, wie du ioBroker installiert hast. Hier geht es ja um den "alten Installer" von Stabilostick.

                                Wenn du den verwendet hast, dann darfst du node.js NICHT per Installer installieren, sonder noed.js als ZIP File herunterladen.

                                Ich habe hier einiges dazu beschrieben: ioBroker unter Windows - Eine Anleitung und ein Rückblick

                                Da ist allerdings die komplette Neuinstallation beschrieben, ich habe dir mal die Schritte für das reine Nofe.js Update zusammengefasst:

                                Ich habe mich bemüht, die manuellen Schritte möglichst einfach mit wenig Potential für Missverständnisse zu beschreiben. Deshalb nutze ich bevorzugt Kommandos, die in der ioBroker Kommandozeile einzutippen sind.

                                In diesem Beispiel ist ioBroker im Verzeichnis F:\iobroker\SmartHome mit dem Namen SmartHome installiert.

                                Diese Anleitung geht davon aus, dass ein aktuelles Windows 10 System verwendet wird. Bei (sehr viel) älteren Windows 10 Versionen oder gar Windows 7 werden die unten verwendeten Tools tar und curl nicht funktionieren. Diese Schritte müsstet ihr dann "per Hand" ausführen. Aber wie gesagt, auf einem aktuellen System ist alles an Bord, was man für diese Anleitung braucht.

                                Im Startmenü gibt es einen neuen Eintrag im Ordner ioBroker mit dem Namen "ioBroker(<Name der Instanz>) Kommandozeile". In meinem Fall heißt der Eintrag also "ioBroker (SmartHome) Kommandozeile".
                                Diesen Startmenü-Eintrag starten wir jetzt, es erscheint ein Cmd Fenster (evtl. müssen wir zunächst das Administrator Passwort des PCs eingeben, da die ioBroker Kommandozeile als Administrator ausgeführt wird).

                                **********************************************************
                                ***               Welcome to ioBroker.                 ***
                                ***                                                    ***
                                ***   Type 'iobroker help' for list of instructions.   ***
                                ***                For more help see                   ***
                                ***     https://github.com/ioBroker/ioBroker.docs      ***
                                **********************************************************
                                
                                Your environment has been set up for using Node.js 10.17.0 (x64) and npm.
                                
                                F:\iobroker\SmartHome>
                                

                                Zunächst stoppen wir ioBroker:

                                iob stop
                                

                                Da sich seit Node.js 18.0 etwas in den Berechtigungen geändert hat, müssen wir dem Windows Dienst jetzt einmalig LocalSystem als Konto zuweisen, das machen wir mit

                                sc config iobroker(<Name der Instanz >) obj=LocalSystem
                                

                                In meinem Beispiel also mit

                                F:\iobroker\SmartHome>sc config iobroker(SmartHome) obj=LocalSystem
                                [SC] ChangeServiceConfig ERFOLG 
                                

                                Wichtig ist die Erfolgsmeldung, ansonsten habt ihr euch wahrscheinlich vertippt.
                                Jetzt aktualisieren wir Node.js, dazu benennen wir zunächst die alte Version um

                                rename nodejs nodejs_org
                                

                                Und laden die aktuell empfohlene Node.js Version herunter (derzeit 16.19.0, Stand 21.02.2023)
                                Für 64 Bit Systeme (und das sollten die allermeisten sein) geht das mit

                                curl --output .\nodejs.zip --url https://nodejs.org/dist/v16.19.0/node-v16.19.0-win-x64.zip
                                

                                Für 32 Bit Systeme die URL https://nodejs.org/dist/v16.19.0/node-v16.19.0-win-x86.zip verwenden.

                                Jetzt packen wir das Zip File aus und benennen den nodejs Ordner passend um (Bei Verwendung der 32 Bit Variante bitte den Pfad im rename Kommando selbst anpassen):

                                tar xf nodejs.zip
                                rename node-v16.19.0-win-x64 nodejs
                                

                                Und schließlich müssen wir noch die angepasste Datei nodevars.bat übernehmen:

                                copy /Y nodejs_org\nodevars.bat nodejs\nodevars.bat
                                

                                Anschließend starten wir ioBroker wieder mit

                                iob start
                                
                                nik82 2 Replies Last reply Reply Quote 1
                                • nik82
                                  nik82 Most Active @Gaspode last edited by nik82

                                  @gaspode
                                  Ah ok, also quasi so wie immer (siehe mein Start-Post in diesem Thema).
                                  Das ging ja damals nicht, aber da hab ich auch das Recht vom Iobroker nicht geändert.
                                  Also sollte es quasi wie immer gehen, nur eben das Recht vom Dienst auf "Lokales Systemkonto" ändern.
                                  Das wäre ja perfekt, wenn das so klappt.
                                  Vielen Dank für die ausführliche Info.
                                  Das Ganze werde ich nächstes Wochenende durchziehen, gebe dann Bescheid obs klappt.

                                  Danke👍

                                  1 Reply Last reply Reply Quote 1
                                  • nik82
                                    nik82 Most Active @Gaspode last edited by nik82

                                    @gaspode
                                    Hi,
                                    so wie besprochen habe ich das jetzt so wie du gesagt hast getestet.
                                    Und es stimmt, der Iobroker startet tätsächlich!

                                    ABER: Mein Problem (siehe Startpost) ist dadurch nicht erledigt:

                                    npm -v bring immer noch einen Fehler:

                                    db4a484a-63f1-4781-9c23-7ab9ee10ef21-image.png

                                    C:\iobroker\SmartHome>npm -v
                                    C:\iobroker\SmartHome\nodejs\node_modules\npm\node_modules\socks-proxy-agent\dist\index.js:110
                                    class SocksProxyAgent extends agent_base_1.Agent {
                                                                               ^
                                    
                                    TypeError: Class extends value undefined is not a constructor or null
                                        at Object.<anonymous> (C:\iobroker\SmartHome\nodejs\node_modules\npm\node_modules\socks-proxy-agent\dist\index.js:110:44)
                                        at Module._compile (node:internal/modules/cjs/loader:1165:14)
                                        at Object.Module._extensions..js (node:internal/modules/cjs/loader:1219:10)
                                        at Module.load (node:internal/modules/cjs/loader:1043:32)
                                        at Function.Module._load (node:internal/modules/cjs/loader:878:12)
                                        at Module.require (node:internal/modules/cjs/loader:1067:19)
                                        at require (node:internal/modules/cjs/helpers:103:18)
                                        at Object.<anonymous> (C:\iobroker\SmartHome\nodejs\node_modules\npm\node_modules\make-fetch-happen\lib\agent.js:174:29)
                                        at Module._compile (node:internal/modules/cjs/loader:1165:14)
                                        at Object.Module._extensions..js (node:internal/modules/cjs/loader:1219:10)
                                        at Module.load (node:internal/modules/cjs/loader:1043:32)
                                        at Function.Module._load (node:internal/modules/cjs/loader:878:12)
                                        at Module.require (node:internal/modules/cjs/loader:1067:19)
                                        at require (node:internal/modules/cjs/helpers:103:18)
                                        at Object.<anonymous> (C:\iobroker\SmartHome\nodejs\node_modules\npm\node_modules\make-fetch-happen\lib\remote.js:7:18)
                                        at Module._compile (node:internal/modules/cjs/loader:1165:14)
                                    C:\iobroker\SmartHome\nodejs\node_modules\npm\node_modules\socks-proxy-agent\dist\index.js:110
                                    class SocksProxyAgent extends agent_base_1.Agent {
                                                                               ^
                                    
                                    TypeError: Class extends value undefined is not a constructor or null
                                        at Object.<anonymous> (C:\iobroker\SmartHome\nodejs\node_modules\npm\node_modules\socks-proxy-agent\dist\index.js:110:44)
                                        at Module._compile (node:internal/modules/cjs/loader:1165:14)
                                        at Object.Module._extensions..js (node:internal/modules/cjs/loader:1219:10)
                                        at Module.load (node:internal/modules/cjs/loader:1043:32)
                                        at Function.Module._load (node:internal/modules/cjs/loader:878:12)
                                        at Module.require (node:internal/modules/cjs/loader:1067:19)
                                        at require (node:internal/modules/cjs/helpers:103:18)
                                        at Object.<anonymous> (C:\iobroker\SmartHome\nodejs\node_modules\npm\node_modules\make-fetch-happen\lib\agent.js:174:29)
                                        at Module._compile (node:internal/modules/cjs/loader:1165:14)
                                        at Object.Module._extensions..js (node:internal/modules/cjs/loader:1219:10)
                                        at Module.load (node:internal/modules/cjs/loader:1043:32)
                                        at Function.Module._load (node:internal/modules/cjs/loader:878:12)
                                        at Module.require (node:internal/modules/cjs/loader:1067:19)
                                        at require (node:internal/modules/cjs/helpers:103:18)
                                        at Object.<anonymous> (C:\iobroker\SmartHome\nodejs\node_modules\npm\node_modules\make-fetch-happen\lib\remote.js:7:18)
                                        at Module._compile (node:internal/modules/cjs/loader:1165:14)
                                    
                                    C:\iobroker\SmartHome>
                                    

                                    Nun weiß ich aber gar nicht wie sich das auswirkt, da der Iobroker läuft, ich muss jetzt mal schauen was nicht läuft, aber ich denke, dass kann nicht in Ordnung sein und wird mir Probleme bereiten.

                                    Hat hier jemand noch eine Idee?

                                    Danke im Voraus.

                                    nik82 1 Reply Last reply Reply Quote 0
                                    • nik82
                                      nik82 Most Active @nik82 last edited by

                                      Fängt schon an, keine Updates möglich:

                                      $ iobroker upgrade daswetter@3.1.4 --debug
                                      
                                      host.IOBROKER(SmartHome) Adapter "system.adapter.daswetter.0" is stopped.
                                      
                                      Aborting install because the npm version could not be checked!Please check that npm is installed correctly.Use "npm install -g npm@4" or "npm install -g npm@latest" to install a supported version.You need to make sure to repeat this step after installing an update to NodeJS and/or npm!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                      
                                      ERROR: Process exited with code 30
                                      
                                      Gaspode 1 Reply Last reply Reply Quote 0
                                      • Gaspode
                                        Gaspode @nik82 last edited by

                                        @nik82
                                        Hmm, sorry. Bin erst in der Mitte des Threads eingestiegen, als es darum ging, dass Node.js 16.17.1 funktioniert, neuere Versionen aber nicht. Du hast ja zusätzlich noch ein anderes Problem.

                                        Offensichtlich hast du ein Problem mit dem Paket "socks-proxy-agent".

                                        Was sagt denn

                                        npm ls
                                        
                                        1 Reply Last reply Reply Quote 1
                                        • nik82
                                          nik82 Most Active last edited by

                                          @gaspode
                                          Also ich habe noch Node.js v14 im Einsatz und will jetzt auf Node.js 16.
                                          Egal ob ich Node.js 16.15, 16.17 oder 16.19 installiere, immer der gleiche Fehler.
                                          Aber bin jetzt ein Stück weitergekommen und zwar habe ich wie schon oben beschrieben es nochmal so versucht:

                                          Bin so vorgegangen (mein Iobroker liegt auf C:\iobroker\SmartHome):

                                          1. C:\iobroker\SmartHome\nodejs\nodevars.bat wegkopiert
                                          2. Verzeichnisinhalt von "C:\iobroker\SmartHome\nodejs" komplett gelöscht
                                          3. Download der MSI Datei 64-bit: https://nodejs.org/download/release/v16.19.0/node-v16.19.0-x64.msi
                                          4. Installation ins vorhandene leere Verzeichnis: "C:\iobroker\SmartHome\nodejs"
                                            (zusätzlich noch Tools mitinstalliert)
                                          5. Iobroker Dienst auf "Lokales Systemkonto" gestellt
                                          6. node -v und npm -v bring alles korrekt:

                                          e46758fd-f483-4ba9-b859-9a296867b3de-image.png

                                          1. Iobroker gestartet

                                          ABER: Er bringt mit immer noch Fehler wenn ich einen Adapter updaten will:

                                          $ iobroker upgrade daswetter@3.1.4 --debug
                                          
                                          Update daswetter from @3.1.2 to @3.1.4
                                          
                                          NPM version: 8.19.3
                                          
                                          Installing iobroker.daswetter@3.1.4... (System call)
                                          
                                          npm WARN old lockfile so supplemental metadata must be fetched from the registry. npm WARN old lockfile npm WARN old lockfile This is a one-time fix-up, please be patient... npm WARN old lockfile
                                          
                                          npm WARN tarball tarball data for kodi-ws@https://github.com/iobroker-community-adapters/kodi-ws/tarball/master/ (sha512-MwuS5kn4j+/olDHH5/F+mO2fU0i2U2hsXsgK8zdj+kt6h8/Rf7iMxHLKcMyYkg1RRJFKY05/3v+GJbx28tetyQ==) seems to be corrupted. Trying again. 
                                          
                                          Gaspode 1 Reply Last reply Reply Quote 0
                                          • Gaspode
                                            Gaspode @nik82 last edited by

                                            @nik82

                                            Überlesen? Was sagt denn:

                                            npm ls
                                            
                                            nik82 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

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

                                            892
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            10
                                            100
                                            4576
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo