Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Untersuchung: code 25 fehlerlösung

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Untersuchung: code 25 fehlerlösung

    This topic has been deleted. Only users with topic management privileges can see it.
    • R
      rewenode @Thomas Braun last edited by rewenode

      War mal wieder soweit. 7 Adapter standen zum update an und da morgen Feiertag ist... 😉

      Vlt können die Erfahrungen zur Fehlersuche beitragen. Jedenfalls hatte ich bei allen 7 Adaptern nachvollziebar das gleiche Fehlerbild. Bin wie folgt vorgegangen:

      1. temp Dateien gelöscht. das es ohne nicht geht, habe ich letztens schon erfahren müssen.
      iobroker@iobroker:~$ for i in $(find /opt/iobroker/node_modules -type d -iname ".*-????????" ! -iname ".local-chromium"); do rm -rf ${i%%/}; done
      
      1. Adapter Update z.B.:
      iobroker@iobroker:~$ iob upgrade pushover@3.0.3 --debug
      

      Und jetzt wird es interessant. Fehler:

      npm ERR! code ENOTEMPTY
      npm ERR! syscall rename
      npm ERR! path /opt/iobroker/node_modules/node-red-node-email/node_modules/encoding-japanese/src
      npm ERR! dest /opt/iobroker/node_modules/.node-red-node-email-1lk8B7Gi/node_modules/encoding-japanese/src
      npm ERR! errno -39
      npm ERR! ENOTEMPTY: directory not empty, rename '/opt/iobroker/node_modules/node-red-node-email/node_modules/encoding-japanese/src' -> '/opt/iobroker/node_modules/.node-red-node-email-1lk8B7Gi/node_modules/encoding-japanese/src'
      
      

      Und zwar bei allen 7 Adaptern IMMER das gleiche Verzeichnis.

      1. Nochmal gelöscht. siehe 1.

      2. Nochmal update. siehe 2.

      Und beim 2.ten mal lief das Update jedesmal ordentlich durch! Und das nachvollziehbar bei jedem der 7 Adapter.

      Was hab ich sonst noch getestet?
      Da das angemeckerte Verzeichnis ein Node-red Verzeichnis ist, habe ich den NR-Adapter mal vor dem Update gestoppt. Hatte keine Auswirkungen.

      Den einzigen Unterschied, den ich zwischen den jeweils ersten Update-Versuch und dem nachfolgenden erfolgreichen gesehen habe, war die Tatsache, dass der Adapter nach dem ersten Versuch natürlich gestoppt war.
      Also habe ich testweise beim nächsten Adapter diesen vorher von Hand gestoppt. - Keine Auswirkungen;-(

      Also nach jeweils 2 Versuchen pro Adapter habe ich jetzt alle aktualisieren können. Aber ob ich mir das nochmal antun würde? Hoffe, irgend jemand
      findet den Fehler oder einen praktikablen Workaraound.

      Ach ja, und noch ein Hinweis. Den Node-Red Adapter selber habe ich nicht geupdatet, den habe ich seit einiger Zeit die 4.0.0 ohne Probleme am Laufen.

      Gruß
      Reiner

      mickym Thomas Braun 2 Replies Last reply Reply Quote 0
      • mickym
        mickym Most Active @rewenode last edited by

        @rewenode Wie gesagt - sind immer unterschiedliche Verzeichnisse - auch wenn es bei Dir das gleiche war - deshalb empfehle ich ja auch das ganze node_modules Verzeichnis neu aufzubauen.

        R 1 Reply Last reply Reply Quote 0
        • Thomas Braun
          Thomas Braun Most Active @rewenode last edited by

          @rewenode sagte in Untersuchung: code 25 fehlerlösung:

          Jedenfalls hatte ich bei allen 7 Adaptern

          Das ist klar. Ein Fehler irgendwo im Tree blockiert ein Update für alle Module.

          R 1 Reply Last reply Reply Quote 0
          • R
            rewenode @Thomas Braun last edited by

            @thomas-braun Worauf ich mir allerdings überhaupt keinen Reim machen kann, wieso war immer der erste Updateversuch erfolglos und der zweite erfolgreich? Wobei jeweils gleichermaßen vorab die Löschorgie stattgefunden hat?
            Wenn die Löcherige nicht vorab durchgeführt wird, ist es scheinbar ein zufälliges Verzeichnis bei dem abgebrochen wird (Wahrscheinlich das erste temp-Verzeichnis wo das Update gerade drüber stolpert)

            1 Reply Last reply Reply Quote 0
            • R
              rewenode @mickym last edited by

              @mickym Hab grad kein Testsystem und bin froh, das die Updates erstmal gelaufen sind.
              Hat sonst noch jemand das Problem dauerhaft lösen können, indem er das nodes_modules Verzeichnis neu aufgebaut hat?

              Thomas Braun mickym 2 Replies Last reply Reply Quote 0
              • Thomas Braun
                Thomas Braun Most Active @rewenode last edited by Thomas Braun

                Wenn man im Netz nach npm err! code enotempty sucht findet man das Phänomen recht häufig. Da sind aber oft aus meinen Augen schon fragwürdige Installationsvorgänge mit root/sudo oder -g Flag oder sonstige hingepfuschte Installationen im Spiel.

                Wenn ich das richtig eingrenze hat das mit SEMVER und der package.json / package-lock-json zu tun.

                https://github.com/npm/cli/issues/4096

                aladdin-add created this issue in npm/cli

                open [BUG] install global typescript got error: npm ERR! ENOTEMPTY: directory not empty #4096

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

                  @rewenode sagte in Untersuchung: code 25 fehlerlösung:

                  @mickym Hab grad kein Testsystem und bin froh, das die Updates erstmal gelaufen sind.
                  Hat sonst noch jemand das Problem dauerhaft lösen können, indem er das nodes_modules Verzeichnis neu aufgebaut hat?

                  Ja 😉 - Natürlich sollte man vorher eine Sicherung machen. Und ich hab den Thread ja unten verlinkt, wo es wunderbar geklappt hat. 😉

                  Thomas Braun 1 Reply Last reply Reply Quote 0
                  • Thomas Braun
                    Thomas Braun Most Active @mickym last edited by

                    Meine Vermutung ist, das diese temporären Verzeichnisse durch scheiternde Versuche entstehen binäre node-red-Nodes zu bauen.

                    Die ganzen Verzeichnisse kommen überwiegend aus der node-red-Ecke. Der abbrev-Kram, der oft als erstes auftaucht:

                    echad@chet:/opt/iobroker $ npm ls abbrev
                    iobroker.inst@3.0.0 /opt/iobroker
                    └─┬ iobroker.node-red@4.0.0
                      └─┬ node-red@3.0.2
                        └─┬ nopt@5.0.0
                          └── abbrev@1.1.1
                    

                    Das würde auch erklären, warum manche wiederkehrend das Problem haben und andere nicht.
                    gyp kommt nicht zu Ende und die zum bauen verwendeten Verzeichnisse bleiben stehen.

                    1 Reply Last reply Reply Quote 0
                    • R
                      rewenode last edited by

                      @mickym @Thomas-Braun
                      Mal ne ganz dumme Frage eines linux/npm Frischlings.
                      Hab mir grad mal mein aktuelles node-modules Verzeichnis angesehen.

                      iobroker@iobroker:~/node_modules$ ls -l
                      total 3000
                      drwxr-xr-x  3 iobroker iobroker  4096 Okt  2 21:36 abab
                      drwxr-xr-x  2 iobroker iobroker  4096 Okt  2 21:36 abbrev
                      drwxr-xr-x  3 iobroker iobroker  4096 Okt  2 21:36 abort-controller
                      drwxr-xr-x  2 iobroker iobroker  4096 Okt  2 21:36 accepts
                      drwxr-xr-x  3 iobroker iobroker  4096 Okt  2 21:36 acme-http-01-standalone
                      drwxr-xr-x  4 iobroker iobroker  4096 Okt  2 21:36 acorn
                      drwxr-xr-x  3 iobroker iobroker  4096 Okt  2 21:36 acorn-globals
                      drwxr-xr-x  3 iobroker iobroker  4096 Okt  2 21:36 acorn-walk
                      drwxr-xr-x  3 iobroker iobroker  4096 Okt  2 21:36 addressparser
                      drwxr-xr-x  3 iobroker iobroker  4096 Okt  2 21:36 after
                      //u.s.w
                      

                      Das Datum entspricht dem letzten gestrigen Updates egal wie tief ich in die Subverzeichnisse schaue.
                      Solte das nicht darauf hindeuten, dass jedesmal das komplette node-modules neu aufgebaut wurde?
                      Dazu würde auch passen, dass das Update (im Vergeleich zu früher) so quälend lang dauert.
                      Das eigentliche Erstellungsdatum wird bei mir im Container leider nicht gezeigt;-(

                      iobroker@iobroker:~/node_modules$ stat node-red
                        File: node-red
                        Size: 4096      	Blocks: 8          IO Block: 4096   directory
                      Device: 801h/2049d	Inode: 12876888    Links: 5
                      Access: (0755/drwxr-xr-x)  Uid: ( 1000/iobroker)   Gid: ( 1000/iobroker)
                      Access: 2022-10-02 21:35:28.934884921 +0200
                      Modify: 2022-10-02 21:36:28.133494430 +0200
                      Change: 2022-10-02 21:36:28.133494430 +0200
                       Birth: -
                      

                      Egal wo ich schaue Birth: ist immer -

                      Thomas Braun 1 Reply Last reply Reply Quote 0
                      • Thomas Braun
                        Thomas Braun Most Active @rewenode last edited by Thomas Braun

                        @rewenode

                        Du stehst eh im falschen Verzeichnis...

                        iobroker@iobroker:~/node_modules$
                        

                        Ist /home/iobroker/node_modules, also das home-Verzeichnis. Der iobroker wohnt aber in /opt/iobroker.

                        Es sei denn, der node-red-Kram soll da wirklich hin, kann ich mir aber nicht vorstellen.

                        Solte das nicht darauf hindeuten, dass jedesmal das komplette node-modules neu aufgebaut wurde?

                        Das wird eh immer gemacht. Dauert halt länger, wenn dann wie ich vermute wieder versucht wird irgendwelche Überbleibsel zu kompilieren.

                        R 2 Replies Last reply Reply Quote 0
                        • R
                          rewenode @Thomas Braun last edited by rewenode

                          @thomas-braun sagte in Untersuchung: code 25 fehlerlösung:

                          Du stehst eh im falschen Verzeichnis...

                          Nop, zumindest nicht im Dockercontainer. Auszug aus dem Dockerfile:

                          # Install ioBroker
                          RUN curl -sL https://iobroker.net/install.sh | bash - \
                              && mkdir -p /opt/scripts/.docker_config/ \
                              && echo "starting" > /opt/scripts/.docker_config/.healthcheck \
                              && echo "${VERSION}" > /opt/scripts/.docker_config/.thisisdocker \
                              && echo $(hostname) > /opt/.firstrun \
                              # Deleting UUID from build
                              && iobroker unsetup -y \
                              # Backup initial ioBroker and userscript folder
                              && tar -cf /opt/initial_iobroker.tar /opt/iobroker \
                              && tar -cf /opt/initial_userscripts.tar /opt/userscripts \
                              # Setting up iobroker-user (shell, home dir and rights)
                              && chsh -s /bin/bash iobroker \
                              && usermod --home /opt/iobroker iobroker \
                              && usermod -u 1000 iobroker \
                              && groupmod -g 1000 iobroker \
                              && chown root:iobroker /usr/sbin/gosu \
                              && chmod +s /usr/sbin/gosu \
                              # Clean up installation cache
                              && apt-get autoclean -y \
                              && apt-get autoremove \
                              && apt-get clean \
                              && rm -rf /tmp/* /var/tmp/* \
                              && rm -rf /root/.cache/* /root/.npm/* \
                              && rm -rf /var/lib/apt/lists/*
                          

                          Zeile 14

                          reiner@rock64:~$ docker exec -u 1000:1000 -ti iobroker /bin/bash
                          iobroker@iobroker:~$ pwd
                          /opt/iobroker
                          iobroker@iobroker:~$
                          
                          Thomas Braun 1 Reply Last reply Reply Quote 0
                          • R
                            rewenode @Thomas Braun last edited by

                            @thomas-braun sagte in Untersuchung: code 25 fehlerlösung:

                            Das wird eh immer gemacht. Dauert halt länger, wenn dann wie ich vermute wieder versucht wird irgendwelche Überbleibsel zu kompilieren.

                            Ja, deshalb frage ich mich, was es bringen kann, das node-modules Verzeichnis neu aufzubauen.

                            1 Reply Last reply Reply Quote 0
                            • Thomas Braun
                              Thomas Braun Most Active @rewenode last edited by

                              @rewenode

                              Ich hasse diese Docker-Scheisse

                              R 1 Reply Last reply Reply Quote 0
                              • michif100
                                michif100 last edited by

                                @Homoran Also bei mir war das Ganze auch reproduzierbar.
                                Dank dem Befehl unter

                                https://forum.iobroker.net/topic/57337/fehler-25-bei-adapter-install-update-mit-npm8/2

                                konnte ich alle Adapter upgraden, außer NodeRED. Da muss ich mal noch sehen, ob ich noch alte Verzeichnisse finde.

                                Allerdings zeigt es mir auf der Admin-Oberfläche immer noch an, dass Updates verfügbar wären. Bei der Suche werden dann allerdings keine gelistet:

                                Bildschirmfoto 2022-10-03 um 11.01.02.png

                                Zudem kann ein Script wegen fehlender Berechtigung nicht gelöscht werden:

                                Bildschirmfoto 2022-10-03 um 11.02.21.png

                                Viele Grüße

                                Thomas Braun 1 Reply Last reply Reply Quote 0
                                • Thomas Braun
                                  Thomas Braun Most Active @michif100 last edited by

                                  @michif100

                                  iobroker update
                                  

                                  sagt? Was in GUIs steht ist oft nicht wahr.

                                  michif100 1 Reply Last reply Reply Quote 0
                                  • michif100
                                    michif100 @Thomas Braun last edited by

                                    @thomas-braun sagte in Untersuchung: code 25 fehlerlösung:

                                    @michif100

                                    iobroker update
                                    

                                    sagt? Was in GUIs steht ist oft nicht wahr.

                                    Passt schon, habe das natürlich mit iobroker update gecheckt, wollte das nur einfach melden, weil im Posting stand, ob es bei uns reproduzierbar ist.
                                    GUI ist klar..

                                    iobroker update
                                    Used repository: stable
                                    Adapter    "admin"        : 6.2.22   , installed 6.2.22
                                    Adapter    "backitup"     : 2.4.12   , installed 2.4.12
                                    Adapter    "discovery"    : 3.0.5    , installed 3.0.5
                                    Adapter    "influxdb"     : 3.1.8    , installed 3.1.8
                                    Adapter    "javascript"   : 6.0.3    , installed 6.0.3
                                    Controller "js-controller": 4.0.23   , installed 4.0.23
                                    Adapter    "loxone"       : 3.0.0    , installed 3.0.0
                                    Adapter    "modbus"       : 5.0.5    , installed 5.0.5
                                    Adapter    "mqtt"         : 4.0.7    , installed 4.0.7
                                    Adapter    "node-red"     : 4.0.0    , installed 4.0.0
                                    Adapter    "proxmox"      : 1.3.4    , installed 1.3.4
                                    Adapter    "shelly"       : 6.0.0    , installed 6.0.0
                                    Adapter    "simple-api"   : 2.7.0    , installed 2.7.0
                                    Adapter    "socketio"     : 4.2.0    , installed 4.2.0
                                    Adapter    "viessmannapi" : 2.0.9    , installed 2.0.9
                                    Adapter    "web"          : 4.3.0    , installed 4.3.0
                                    Adapter    "ws"           : 1.3.0    , installed 1.3.0
                                    

                                    Eher störend ist für mich der Fehler beim Löschen des Skripts.

                                    Node ist übrigens v16.15.1

                                    und

                                    npm ist 8.11.0

                                    Thomas Braun Homoran michif100 3 Replies Last reply Reply Quote 0
                                    • Thomas Braun
                                      Thomas Braun Most Active @michif100 last edited by Thomas Braun

                                      @michif100 sagte in Untersuchung: code 25 fehlerlösung:

                                      Node ist übrigens v16.15.1

                                      Updaten.
                                      Den Rest vom Betriebssystem auch.

                                      michif100 1 Reply Last reply Reply Quote 1
                                      • Homoran
                                        Homoran Global Moderator Administrators @michif100 last edited by

                                        @michif100 sagte in Untersuchung: code 25 fehlerlösung:

                                        Adapter "node-red" : 4.0.0 , installed 4.0.0

                                        zur 4.0 gibt es schon Threads

                                        michif100 1 Reply Last reply Reply Quote 1
                                        • michif100
                                          michif100 @Thomas Braun last edited by

                                          @thomas-braun sagte in Untersuchung: code 25 fehlerlösung:

                                          @michif100 sagte in Untersuchung: code 25 fehlerlösung:

                                          Node ist übrigens v16.15.1

                                          Updaten.

                                          Was habe ich verpasst, ich dachte v16.x sei aktuell die empfohlene Version? Oder liegt es an der Unterversion?

                                          Viele Grüße

                                          Thomas Braun 1 Reply Last reply Reply Quote 0
                                          • michif100
                                            michif100 @Homoran last edited by

                                            @homoran Danke, werde ich mir anschauen

                                            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

                                            930
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            34
                                            255
                                            31182
                                            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