Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Error/Bug
    4. IObroker started nicht mehr: update node.js nach V16.18.0

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    IObroker started nicht mehr: update node.js nach V16.18.0

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

      IObroker started nicht mehr nach update node.js von V14.19.3 nach V16.18.0
      IObroker started nicht mehr: update node.js nach V16.18.0

      Systemdata Bitte Ausfüllen
      Hardwaresystem: Asus laptop
      Arbeitsspeicher: 8GB
      Festplattenart: SSD/HDD
      Betriebssystem: Windows 10
      Node-Version: ?
      Nodejs-Version: 14.19.3
      NPM-Version: 6.14.17
      Installationsart: Manuell update
      Image genutzt: Ja, am anfang

      Mehrere von diese Fehler im log:
      A system error occurred: uv_uptime returned EPERM (operation not permitted)
      SystemError: A system error occurred: uv_uptime returned EPERM (operation not permitted)
      at C:\Program Files\iobroker\SmartHome\node_modules\pidusage\lib\wmic.js:65:34
      at ChildProcess.<anonymous> (C:\Program Files\iobroker\SmartHome\node_modules\pidusage\lib\bin.js:44:5)
      at ChildProcess.emit (node:events:513:28)
      at ChildProcess.emit (node:domain:489:12)
      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 Socket.emit (node:domain:489:12)
      at Pipe.<anonymous> (node:net:301:12)

      Update ausgeführt wie genannt in https://forum.iobroker.net/topic/27828/node-js-update-unter-windows/6

      1: Konsole: iobroker stop
      2: Sicherung des Ordners: C:\Program Files\iobroker\SmartHome\nodejs auf dem Desktop
      3: Download der benötigten Node.js Version unter https://nodejs.org als Archiv nicht als msi Datei
      4: Entpacken des Downloads und kopieren den Gesamten Ordners über den vorhandenen C:\Program Files\iobroker\SmartHome\nodejs Ordner.
      5: Kopiere aus der Sicherungskopie des Desktops die Datei nodevars.bat in den Ordner C:\Program Files\iobroker\SmartHome\nodejs
      6: Konsole: iobroker start

      Zurück zu den alten Ordner funktioniert es wieder.

      Jemand eine Ahnung ?

      crunchip 1 Reply Last reply Reply Quote 0
      • crunchip
        crunchip Forum Testing Most Active @bakkergr last edited by crunchip

        @bakkergr hab zwar mit Windows nichts am Hut, jedoch ist der Thread veraltet, es gibt einen neuen Thread(Neue Windows installer)

        bakkergr 1 Reply Last reply Reply Quote 0
        • bakkergr
          bakkergr @crunchip last edited by

          @crunchip
          Danke für den Tip.
          Werde die Installation auf einen anderen Regner ausprobieren.
          Es wird im Thread übrigens ein gleiches Problem genannt als ich habe. Wied aber nicht beantwortet weil der Thread um die Installation handelt.

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

            erledigt

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

              @bernd1967
              Sieht tatsächlich genau gleich aus.
              Habe leider noch keine Lösung gefunden.
              Vermute etwas zu tun mit Autorisation interhalb Windows aber habe (mit Google) noch nichts gefunden was hilft.
              Was mir auffällt ist das der Ordner node_modules unter nodejs/node_modules/npm in V16.18.0 viel kleiner ist als in V14.19.3 (6,44MB / 14,0MB) und viel weniger Dateien enthält (1448 / 3321).
              Vielleicht hat jemand eine Erklärung dafür.

              Bin daneben damit beschäftigt auf ein anderer Rechner mit dem 2022 Installer IOBroker zu installieren. Der Anfang geht gut.
              Melde mich wenn ich etwas herausgefunden habe.

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

                @bakkergr
                Danke für die Rückmeldung.
                Hab es jetzt mit dem node.js Installer gemacht und IOB neu installiert, läuft wieder....

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

                  @bakkergr said in IObroker started nicht mehr: update node.js nach V16.18.0:

                  wmic.js

                  Habe das letztendlich das gleiche gemacht wie @bernd1967.
                  Eine neue Installation von IOBroker gemacht mit dem neuen Installer.
                  Prozedur wie im Thread https://forum.iobroker.net/topic/55185/test-iobroker-unter-windows-installieren-2022-edition/134 angegeben ausgeführt und den alter iobroker-data Ordner zurück kopiert.
                  Alles läuft ohne Probleme (Node.js v16.15.1 / npm v8.11.0 ).

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

                    Hi,
                    also mit Node.js v 16.19.0 gibt es leider das gleiche Problem. Ich denke auch, es hängt irgendwie an den Rechten. Entweder es wird irgendwo noch ein Konfigurationsparameter benötigt oder irgendein File ist schreibgeschützt, das es nicht sein sollte.

                    Klar kann man einfach iobroker neu installieren, ich würde nur gerne den Grund für das Problem verstehen.

                    Der eigentliche Fehler tritt hier auf:
                    at <instance home>\node_modules\pidusage\lib\wmic.js:65:34

                        const uptime = Math.floor(os.uptime() || (date / 1000))
                    

                    Also beim Aufruf von os.uptime().
                    Ich vermute mal, das das der erste Aufruf einer Funktion vom os Package ist, und das es mit dieser Package ein Rechte Problem gibt. Leider hab ich bisher keine weitere Info gefunden. Sagt das hier evtl. jemandem was?

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

                      So, ich glaube ich habe die Ursache (und Lösung) gefunden.
                      Der "alte" Installer legt einen ioBroker User an, mit dem der Windows ioBroker Service gestartet wird. Dieser scheint nicht die erforderlichen Rechte zu haben, um mit eine node.js Version ab 16.18.0 Zugriff auf die System Resourcen zu haben.
                      Beheben lässt sich das so:

                      • ioBroker stoppen
                      • 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
                      • OK drücken und ioBroker neu starten

                      Und schon läuft ioBroker auch mit node.js ab 16.18.0 (bei mir im Test jetzt mit 16.19.0) 🙂

                      Evtl. wäre es sauberer, den verwendeten User mit den erforderlichen Rechten auszustatten, denn @Stabilostick hat sich damals bestimmt was dabei gedacht, einen eigenen User anzulegen. Da hab ich aber keinen Plan, wie man das machen kann.

                      Es handelt sich wohl um einen "Virtuellen Account", der eigentlich alle Anforderungen für ioBroker mitbringen sollte. Warum das jetzt unter den Neuen Node Versionen nicht mehr geht? Keine Ahnung. Der o.g. Workaround dürfte jedenfalls keine Nachteile mit sich bringen.

                      Könnte mal jemand mit einer neuen Installation gucken, welcher User da beim Service eingetragen ist?

                      sigi234 1 Reply Last reply Reply Quote 0
                      • sigi234
                        sigi234 Forum Testing Most Active @Gaspode last edited by

                        @gaspode sagte in IObroker started nicht mehr: update node.js nach V16.18.0:

                        Könnte mal jemand mit einer neuen Installation gucken, welcher User da beim Service eingetragen ist?

                        Wo sehe ich das?

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

                          @sigi234

                          • In Windows das Dienste-Fenster ("Services") als Admin öffnen und den ioBroker Dienst suchen.
                          • Eigenschaften des Dienstes öffnen und auf die Seite "Anmelden" wechseln.
                          • Gucken, was eingetragen ist. Ist das Häkchen bei "Lokales Systemkonto" oder "Dieses Konto"? Wenn "Dieses Konto": Was ist da eingetragen?
                          sigi234 1 Reply Last reply Reply Quote 0
                          • sigi234
                            sigi234 Forum Testing Most Active @Gaspode last edited by sigi234

                            @gaspode sagte in IObroker started nicht mehr: update node.js nach V16.18.0:

                            Ist das Häkchen bei "Lokales Systemkonto" oder "Dieses Konto"?

                            Dieses Konto

                            Edit:

                            "Lokales Systemkonto"

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

                              @sigi234 said in IObroker started nicht mehr: update node.js nach V16.18.0:

                              Dieses Konto

                              Und was ist da eingetragen?
                              Und das ist eine Installation mit dem neuen Installer (also ohne Möglichkeit mehrerer Instanzen parallel)?

                              sigi234 1 Reply Last reply Reply Quote 0
                              • sigi234
                                sigi234 Forum Testing Most Active @Gaspode last edited by

                                @gaspode sagte in IObroker started nicht mehr: update node.js nach V16.18.0:

                                @sigi234 said in IObroker started nicht mehr: update node.js nach V16.18.0:

                                Dieses Konto

                                Und was ist da eingetragen?

                                Screenshot (5212).png

                                Und das ist eine Installation mit dem neuen Installer (also ohne Möglichkeit mehrerer Instanzen parallel)?

                                Ja

                                Gaspode 1 Reply Last reply Reply Quote 1
                                • Gaspode
                                  Gaspode @sigi234 last edited by

                                  @sigi234
                                  OK, mit deinem Edit wird es klar. Also wie vermutet, setzt der neue Installer im Gegensatz zum alten "Lokales Systemkonto". Somit dürfte das Ändern bei Installationen mit dem alten Installer wie oben beschrieben keine Nachteile haben.
                                  Danke für's Nachsehen. 🙂

                                  sigi234 1 Reply Last reply Reply Quote 0
                                  • sigi234
                                    sigi234 Forum Testing Most Active @Gaspode last edited by

                                    @gaspode

                                    Jupp, der neue Installer lässt leider mehrerer Instanzen parallel nicht zu, was Schade ist da man nicht wirklich testen kann.

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

                                      @Gaspode Auch hier mit neuem Installer (ohne Instanzen)

                                      iobroker Dienst.jpg

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

                                        @uwerlp
                                        Danke. Ich denke inzwischen können wir es als gesichert ansehen, dass das Problem mit neueren Node Versionen im Zusammenhang mit dem alten Installer vom User des Services abhängt.
                                        Mit anderen Worten: Man kann Instanzen des alten Installers für neuere Node Versionen fit machen, indem man den User des entsprechenden Services wie oben beschrieben ändert.

                                        1 Reply Last reply Reply Quote 0
                                        • First post
                                          Last post

                                        Support us

                                        ioBroker
                                        Community Adapters
                                        Donate

                                        878
                                        Online

                                        31.8k
                                        Users

                                        80.0k
                                        Topics

                                        1.3m
                                        Posts

                                        6
                                        18
                                        1047
                                        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