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

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Error/Bug
  4. node js update ohne adapter neu zu installieren?

NEWS

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

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

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

node js update ohne adapter neu zu installieren?

Geplant Angeheftet Gesperrt Verschoben Gelöst Error/Bug
update node jsyahkahomebridgez-wave
17 Beiträge 4 Kommentatoren 5.6k Aufrufe 3 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.
  • S schroedinger

    Hi,

    danke -
    Ich bin nochmals vorgegangen wie oben beschrieben (ich starte übrigens immer mit einem funktionierenden System, da ich nach jeden nicht-funktionierenden Versuch mit einem image mein vorheriges System wiederherstelle)
    nur dass ich dieses Mal Node v8 installiert habe.

    danach ich habe

    sudo -H npm rebuild
    

    ausführt -> allerdings habe ich ein Unmenge an Fehlermeldungen erhalten.
    Siehe hier:
    log.txt

    EIn Berechtigungsfehler?
    Sorry, will nicht nerven und ich könnte natürlich auch bei node v6 bleiben, aber ich würde doch gerne die neuen adapter ausprobieren, die eben nur ab v8 gehen.

    HomoranH Nicht stören
    HomoranH Nicht stören
    Homoran
    Global Moderator Administrators
    schrieb am zuletzt editiert von Homoran
    #7

    @schroedinger sagte in node js update ohne adapter neu zu installieren?:

    allerdings habe ich ein Unmenge an Fehlermeldungen erhalten.

    nicht wirklich:
    WARN
    Es handelt sich hier um buildtools, die keinen zugriff auf root haben (EACCESS) und dann das Ganze in ein temporäres Verzeichnis verlagern

    SORRY!
    unten geht es ja noch viel weiter - da muss jemand anderes noch was zu sagen. @AlCalzone

    kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

    1 Antwort Letzte Antwort
    0
    • S Offline
      S Offline
      schroedinger
      schrieb am zuletzt editiert von
      #8

      Hi,

      ich habe verstanden, dass ich nach der Installation von node v6 auf node v8 die bereits installierten Adapter für diese geänderte node-Version neu kompilieren muss.
      Offensichtlicht hat dies bei mir mit

      sudo -H npm rebuild
      

      nicht geklappt sondern zu den obigen Fehlern geführt.
      An anderer Stelle habe ich jetzt gelesen, dass man Folgendes machen muss:

      cd /opt/iobroker
      sudo ./reinstall.sh
      

      (habe geprüft - die datei reinstall.sh ist in dem Verzeichnis auch vorhanden)

      leider erhalte ich hier wieder den folgenden Fehler

      sudo: unable to execute ./reinstall.sh: No such file or directory
      

      Es ist zumausderHautfahren; ich gebe ja ungern auf und etwas möchte ich schon noch versuchen die Adapter neuzukompilieren.

      Vielleicht hat ja doch noch jemand einen Tipp?

      AlCalzoneA 1 Antwort Letzte Antwort
      0
      • S schroedinger

        Hi,

        ich habe verstanden, dass ich nach der Installation von node v6 auf node v8 die bereits installierten Adapter für diese geänderte node-Version neu kompilieren muss.
        Offensichtlicht hat dies bei mir mit

        sudo -H npm rebuild
        

        nicht geklappt sondern zu den obigen Fehlern geführt.
        An anderer Stelle habe ich jetzt gelesen, dass man Folgendes machen muss:

        cd /opt/iobroker
        sudo ./reinstall.sh
        

        (habe geprüft - die datei reinstall.sh ist in dem Verzeichnis auch vorhanden)

        leider erhalte ich hier wieder den folgenden Fehler

        sudo: unable to execute ./reinstall.sh: No such file or directory
        

        Es ist zumausderHautfahren; ich gebe ja ungern auf und etwas möchte ich schon noch versuchen die Adapter neuzukompilieren.

        Vielleicht hat ja doch noch jemand einen Tipp?

        AlCalzoneA Offline
        AlCalzoneA Offline
        AlCalzone
        Developer
        schrieb am zuletzt editiert von
        #9

        @schroedinger sagte in node js update ohne adapter neu zu installieren?:

        sudo: unable to execute ./reinstall.sh: No such file or directory
        

        Probiere mal sudo bash ./reinstall.sh.

        Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

        1 Antwort Letzte Antwort
        0
        • arteckA Offline
          arteckA Offline
          arteck
          Developer Most Active
          schrieb am zuletzt editiert von
          #10

          war da mal nicht was

          sudo chmod +x reinstall.sh
          

          erstmal ausführbar machen

          zigbee hab ich, zwave auch, nuc's genauso und HA auch

          1 Antwort Letzte Antwort
          0
          • S Offline
            S Offline
            schroedinger
            schrieb am zuletzt editiert von
            #11

            Hi,

            zunächst mal "danke", dass ihr euch der Sache annehmt.

            Ich habe eure Tipps ausgeführt:

            sudo chmod +x reinstall.sh
            sudo bash ./reinstall.sh
            

            Und dies hat zu folgenden Ergebnis geführt (Idee: vielleicht hat die .sh-Datei ja einen Fehler):

            pi@raspberrypi:/opt/iobroker $ sudo bash ./reinstall.sh
            Commands:
            iobroker setup [--objects <host>] [--states <host>] [custom]
            iobroker start
            iobroker stop
            iobroker start <adapter>
            iobroker stop <adapter>
            iobroker start all
            iobroker restart
            iobroker restart <adapter>
            iobroker add <adapter> [--enabled] [--host <host>] [--port <port>]
            iobroker install <adapter>
            iobroker url <url> [<name>]
            iobroker del <adapter>
            iobroker del <adapter>.<instance>
            iobroker update [repository url] [--updatable/--u] [--installed/--i]
            iobroker upgrade [repository url]
            iobroker upgrade self [repository url]
            iobroker upgrade <adapter> [repository url]
            iobroker upload <pathToLocalFile> <pathIniobroker>
            iobroker upload all
            iobroker upload <adapter>
            iobroker object get <id>
            iobroker object del <id>
            iobroker object chmod <object-mode> [state-mode] <id>
            iobroker object chown <user> <group> <id>
            iobroker object list <id>
            iobroker state get <id>
            iobroker state getplain <id>
            iobroker state set <id> <value> [ack]
            iobroker state del <id>
            iobroker message <adapter>[.instanceid] <command> [<message>]
            iobroker list <type> [filter]
            iobroker chmod <mode> <file>
            iobroker chown <user> <group> <file>
            iobroker touch <file>
            iobroker rm <file>
            iobroker file read <iobroker-path-to-read> [<filesystem-path-to-write>]
            iobroker file write <filesystem-path-to-read> <iobroker-path-to-read>
            iobroker user add <user> [--ingroup group] [--password pass]
            iobroker user del <user>
            iobroker user passwd <user> [--password pass]
            iobroker user enable <user>
            iobroker user disable <user>
            iobroker user get <user>
            iobroker user check <user> [--password pass]
            iobroker group add <group>
            iobroker group del <group>
            iobroker group list <group>
            iobroker group enable <group>
            iobroker group disable <group>
            iobroker group get <group>
            iobroker group adduser <group> <user>
            iobroker group deluser <group> <user>
            iobroker set <adapter>.<instance> [--port port] [--ip address] [--ssl
            true|false]
            iobroker clean
            iobroker backup
            iobroker restore <backup name or path>
            iobroker <command> --timeout 5000
            iobroker status
            iobroker repo [name]
            iobroker uuid
            iobroker unsetup
            iobroker multihost <enable|disable> [--secure true|false]
            iobroker multihost browse
            iobroker multihost connect
            iobroker version [adapter]
            iobroker [adapter] -v
            
            
            Optionen:
              --objects                                              [Standard: "127.0.0.1"]
              --states                                               [Standard: "127.0.0.1"]
              --lang                                                        [Standard: "en"]
            
            ./reinstall.sh: Zeile 4: $'\r': Kommando nicht gefunden.
            ./reinstall.sh: Zeile 29: Syntaxfehler beim unerwarteten Wort `done'
            '/reinstall.sh: Zeile 29: `    done < "$BASE/reinstall.list.txt"
            
            

            Und um zu klären, ob ev. "reinstall.sh" einen Fehler enthält, hier der Inhalt dieser Datei:

            #!/bin/bash
            iobroker stop
            BASE=$(pwd)
            
            if [ ! -f "$BASE/iobroker" ]
            then
                echo "Script needs to be started in the iobroker base directory (normally /opt/iobroker on linux)"
                exit
            fi
            
            if [ -d ./node_modules ]
            then
                ls -1 ./node_modules | grep iobroker. > reinstall.list.txt
                chmod -R 777 *
                cd node_modules
                rm -R *
                pwd
            
                while read IN
                do
                    npm install $IN --production --prefix $BASE
                    if [ $? -eq 0 ]
                    then
                        echo "DONE $IN"
                    else
                        echo "FAIL $IN"
                    fi
            
                done < "$BASE/reinstall.list.txt"
                chmod -R 777 *
                rm "$BASE/reinstall.list.txt"
                iobroker upload all
            fi
            

            Idee: irgendwo habe was diesbezüglich was gelesen, dass die 1. Zeile diesser Datei betrifft und zwar "#!/bin/bash"

            Jedenfalls bis ich nach wie vor froh über eine Tipps

            HomoranH 1 Antwort Letzte Antwort
            0
            • arteckA Offline
              arteckA Offline
              arteck
              Developer Most Active
              schrieb am zuletzt editiert von arteck
              #12

              die Datei ist auf jedem system gleich

              deine Formatierung der Datei stimmt nicht
              in Zeile 4 ist ein carriage return was nicht sein darf...

              schau mal ob die Datei erzeugt wurde

              reinstall.list.txt
              

              zigbee hab ich, zwave auch, nuc's genauso und HA auch

              1 Antwort Letzte Antwort
              0
              • S schroedinger

                Hi,

                zunächst mal "danke", dass ihr euch der Sache annehmt.

                Ich habe eure Tipps ausgeführt:

                sudo chmod +x reinstall.sh
                sudo bash ./reinstall.sh
                

                Und dies hat zu folgenden Ergebnis geführt (Idee: vielleicht hat die .sh-Datei ja einen Fehler):

                pi@raspberrypi:/opt/iobroker $ sudo bash ./reinstall.sh
                Commands:
                iobroker setup [--objects <host>] [--states <host>] [custom]
                iobroker start
                iobroker stop
                iobroker start <adapter>
                iobroker stop <adapter>
                iobroker start all
                iobroker restart
                iobroker restart <adapter>
                iobroker add <adapter> [--enabled] [--host <host>] [--port <port>]
                iobroker install <adapter>
                iobroker url <url> [<name>]
                iobroker del <adapter>
                iobroker del <adapter>.<instance>
                iobroker update [repository url] [--updatable/--u] [--installed/--i]
                iobroker upgrade [repository url]
                iobroker upgrade self [repository url]
                iobroker upgrade <adapter> [repository url]
                iobroker upload <pathToLocalFile> <pathIniobroker>
                iobroker upload all
                iobroker upload <adapter>
                iobroker object get <id>
                iobroker object del <id>
                iobroker object chmod <object-mode> [state-mode] <id>
                iobroker object chown <user> <group> <id>
                iobroker object list <id>
                iobroker state get <id>
                iobroker state getplain <id>
                iobroker state set <id> <value> [ack]
                iobroker state del <id>
                iobroker message <adapter>[.instanceid] <command> [<message>]
                iobroker list <type> [filter]
                iobroker chmod <mode> <file>
                iobroker chown <user> <group> <file>
                iobroker touch <file>
                iobroker rm <file>
                iobroker file read <iobroker-path-to-read> [<filesystem-path-to-write>]
                iobroker file write <filesystem-path-to-read> <iobroker-path-to-read>
                iobroker user add <user> [--ingroup group] [--password pass]
                iobroker user del <user>
                iobroker user passwd <user> [--password pass]
                iobroker user enable <user>
                iobroker user disable <user>
                iobroker user get <user>
                iobroker user check <user> [--password pass]
                iobroker group add <group>
                iobroker group del <group>
                iobroker group list <group>
                iobroker group enable <group>
                iobroker group disable <group>
                iobroker group get <group>
                iobroker group adduser <group> <user>
                iobroker group deluser <group> <user>
                iobroker set <adapter>.<instance> [--port port] [--ip address] [--ssl
                true|false]
                iobroker clean
                iobroker backup
                iobroker restore <backup name or path>
                iobroker <command> --timeout 5000
                iobroker status
                iobroker repo [name]
                iobroker uuid
                iobroker unsetup
                iobroker multihost <enable|disable> [--secure true|false]
                iobroker multihost browse
                iobroker multihost connect
                iobroker version [adapter]
                iobroker [adapter] -v
                
                
                Optionen:
                  --objects                                              [Standard: "127.0.0.1"]
                  --states                                               [Standard: "127.0.0.1"]
                  --lang                                                        [Standard: "en"]
                
                ./reinstall.sh: Zeile 4: $'\r': Kommando nicht gefunden.
                ./reinstall.sh: Zeile 29: Syntaxfehler beim unerwarteten Wort `done'
                '/reinstall.sh: Zeile 29: `    done < "$BASE/reinstall.list.txt"
                
                

                Und um zu klären, ob ev. "reinstall.sh" einen Fehler enthält, hier der Inhalt dieser Datei:

                #!/bin/bash
                iobroker stop
                BASE=$(pwd)
                
                if [ ! -f "$BASE/iobroker" ]
                then
                    echo "Script needs to be started in the iobroker base directory (normally /opt/iobroker on linux)"
                    exit
                fi
                
                if [ -d ./node_modules ]
                then
                    ls -1 ./node_modules | grep iobroker. > reinstall.list.txt
                    chmod -R 777 *
                    cd node_modules
                    rm -R *
                    pwd
                
                    while read IN
                    do
                        npm install $IN --production --prefix $BASE
                        if [ $? -eq 0 ]
                        then
                            echo "DONE $IN"
                        else
                            echo "FAIL $IN"
                        fi
                
                    done < "$BASE/reinstall.list.txt"
                    chmod -R 777 *
                    rm "$BASE/reinstall.list.txt"
                    iobroker upload all
                fi
                

                Idee: irgendwo habe was diesbezüglich was gelesen, dass die 1. Zeile diesser Datei betrifft und zwar "#!/bin/bash"

                Jedenfalls bis ich nach wie vor froh über eine Tipps

                HomoranH Nicht stören
                HomoranH Nicht stören
                Homoran
                Global Moderator Administrators
                schrieb am zuletzt editiert von
                #13

                @schroedinger
                leider hast du nach dem chmod nicht mal ohne bash versucht (da hast du wohl zu viele Optionen gehabt ;-) )

                Wenn dann eine Meldung mit einem ^M kommt hast du ein bekanntes Problem, zu dem auch das von @arteck passt.
                Es gab mal eine Zeit, da war die Datei wohl mit einem Windows Programm editiert worden.
                Irgendwo hatte @paul53 dazu eine lösung gepostet - und ich hatte irgendwo die richtige Datei zum Download reingestellt

                Gruß
                Rainer

                kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                1 Antwort Letzte Antwort
                0
                • S Offline
                  S Offline
                  schroedinger
                  schrieb am zuletzt editiert von
                  #14

                  Hi,

                  • die Datei "reinstall.list.txt" exisitert nicht.

                  Habe mir dann ein paar der Posts von Paul ansehen.

                  paul53 schreibt:

                  Wenn die Datei ca. 654 Byte groß ist, ist sie im Linux-Format; ist sie mehr als 680 Byte groß, muss sie erst in das Linux-Format gebracht werden, z.B. mit Notepad++. Dann ausführen
                  

                  -> ich habe die Datei in nano geöffnet und alle Leerzeichen entfernt -> die Datei ist jetzt genau 680 Bytes gross -> also muss ich diese ins Linuxformat bringen.
                  Aber wie? Denn ich habe die Datei ja doch mit nano bearbeitet und abgespeichert -> das sollte doch dann Linux-Format sein?

                  Vielleicht wäre es wirklich das beste eine funktionierende reinstall.sh downzuloaden.
                  Aber auch mit "advanced search" (alle Posts von paul53 mit "reinstall.sh") konnte ich keinen Link finden um diese Datei downzulaoden.

                  1 Antwort Letzte Antwort
                  0
                  • S Offline
                    S Offline
                    schroedinger
                    schrieb am zuletzt editiert von
                    #15

                    Hey,

                    *** erster Meilenstein erreicht ***

                    sudo ./reinstall.sh
                    

                    funktioniert jetzt.

                    Was habe ich getan?

                    Ich habe reinstall.sh in einem anderen Editor geöffnet. Dort habe ich festgestellt, dass am Ende jeder Zeile ein "^M" stand.
                    diese "^M"s habe ich alle entfernt und dann den Befehl ausgeführt.
                    -> funktioniert.

                    Ich werde jetzt versuchen nochmals ein Update auf node v8 zu machen (habe ich jetzt noch nicht), dann berichten ob die Adapter funktionieren .
                    Falls "ja" werde dich diesen thread als "gelöst" bezeichen.

                    1 Antwort Letzte Antwort
                    0
                    • S Offline
                      S Offline
                      schroedinger
                      schrieb am zuletzt editiert von
                      #16

                      Hi,

                      okay - Problem gelöst. *****:grinning:

                      Danke an jeden der zur Lösung beigetragen hat.
                      Zusammenfassend stelle ich nochmals die Lösungsschritte dar.

                      Ziel: Node von v6 auf v8 aktualisieren und die Adapter neukomplieren

                      Lösungsschritte:

                      sudo iobroker stopp 
                      sudo apt-get --purge remove node
                      sudo apt-get --purge remove nodejs
                      sudo apt-get autoremove
                      curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
                      sudo apt-get install -y nodejs
                      node -v
                      sudo npm install -g npm@4
                      npm -v
                      

                      anschließend in /opt/iobroker die Datei reinstall.sh repariert
                      (= in einem Editor alle "^M" am Ende jeder Zeile entfernt.

                      anschließend

                      sudo chmod +x reinstall.sh
                      sudo ./reinstall.sh
                      

                      und schließend ein reboot

                      -> läuft das System tadellos mit node v8.

                      cu
                      schroedinger

                      AlCalzoneA 1 Antwort Letzte Antwort
                      0
                      • S schroedinger

                        Hi,

                        okay - Problem gelöst. *****:grinning:

                        Danke an jeden der zur Lösung beigetragen hat.
                        Zusammenfassend stelle ich nochmals die Lösungsschritte dar.

                        Ziel: Node von v6 auf v8 aktualisieren und die Adapter neukomplieren

                        Lösungsschritte:

                        sudo iobroker stopp 
                        sudo apt-get --purge remove node
                        sudo apt-get --purge remove nodejs
                        sudo apt-get autoremove
                        curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
                        sudo apt-get install -y nodejs
                        node -v
                        sudo npm install -g npm@4
                        npm -v
                        

                        anschließend in /opt/iobroker die Datei reinstall.sh repariert
                        (= in einem Editor alle "^M" am Ende jeder Zeile entfernt.

                        anschließend

                        sudo chmod +x reinstall.sh
                        sudo ./reinstall.sh
                        

                        und schließend ein reboot

                        -> läuft das System tadellos mit node v8.

                        cu
                        schroedinger

                        AlCalzoneA Offline
                        AlCalzoneA Offline
                        AlCalzone
                        Developer
                        schrieb am zuletzt editiert von
                        #17

                        @schroedinger sagte in node js update ohne adapter neu zu installieren?:

                        sudo npm install -g npm@4

                        Version 4 ist mittlerweile relativ alt. Der Downgrade war nur nötig, da einige 5er-Versionen sehr buggy waren. Version 6+ kann ohne Bedenken eingesetzt werden, wenn man sich an einige Regeln hält.

                        Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                        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

                        932

                        Online

                        32.4k

                        Benutzer

                        81.5k

                        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