Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Node JS Update von v8 auf V10 schlägt fehl

    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

    Node JS Update von v8 auf V10 schlägt fehl

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

      Zum Topic - aber nicht speziell zum letzten post:

      Ich habe nun 2 Major Version Upgrades erfolgreich durchgeführt. 8-10-12
      Egal ob im Master (docker auf QNAP) oder den clients (RBP3b+) es klappte nie ohne "n" auch wenn alles korrekt installiert wurde, habe ich immer die alte version angezeigt bekommen (node -v). Mit "n" ist das gelöst. Hier mein Weg der immer klappte mit "n" - falls ihr "n" nicht habt - geht einfach ins system "sudo npm install -g n" bzw hier nachlesen https://www.npmjs.com/package/n

      Unter dem user "pi" auf den raspb 3b+ bzw unter dem container user:

      cd /opt/iobroker/
      iobroker stop
      iobroker backup
      curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
      sudo apt-get install -y nodejs
      sudo n 12.16.3
      sudo npm install npm@latest -g
      node -v
      npm -v
      npm rebuild
      curl -sL https://iobroker.net/fix.sh | bash -
      iobroker start

      Viel Erfolg

      Wolfgang

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

        @realwax said in Node JS Update von v8 auf V10 schlägt fehl:

        sudo apt-get install -y nodejs
        sudo n 12.16.3

        Da machst du aber Dinge doppelt. Das könnte früher oder später wieder zu Problemen führen. Zum einen ziehst du über apt/dpkg ein nodejs inkl. node und npm aus dem nodesource-Repository, zum anderen auf einem zweiten, davon unabhängigen Weg über n dann nochmal ein separates node 12.16.3.
        Das liegt dann in $HOME/n bzw. $HOME/n/bin und dürfte eigentlich dann dort auch nicht mehr genutzt werden, denn

        pi@raspberrypi:~ $ echo $PATH
        /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games
        

        Im besten Fall ist es überflüssig, stört aber auch nicht weiter; im blödsten Fall stolpert man doch noch irgendwie drüber.

        realwax 1 Reply Last reply Reply Quote 0
        • S
          samsungfreak @Thomas Braun last edited by

          @Thomas-Braun sagte in Node JS Update von v8 auf V10 schlägt fehl:

          @samsungfreak Ja, jetzt scheint es ok zu sein.
          Du fährst ein Debian, oder? Im Docker?
          root-Login macht mich immer ganz nervös. Da kann man so schön alles verbiegen...
          Was kommt denn bei

          ls -la /usr/local/bin
          

          rum?

          Genau es handelt sich um ein Debian System aber ganz normal als VM (VMware) und nicht im Docker.
          Hier die Ausgabe:

          root@Broker:~# ls -la /usr/local/bin
          insgesamt 8
          drwxrwsr-x  2 root staff 4096 Feb 18  2017 .
          drwxrwsr-x 10 root staff 4096 Feb 11  2017 ..
          
          
          Thomas Braun 1 Reply Last reply Reply Quote 0
          • Thomas Braun
            Thomas Braun Most Active @samsungfreak last edited by

            @samsungfreak Dann gewöhn dir das root-Login ab!
            Im Docker muss das wohl so sein, weil da sudo nicht funktioniert. Aber in einer VM muss das wie üblich funktionieren.

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

              @Thomas-Braun Aber zum "Problem" zurück. Für mich sieht soweit alles gut aus oder wie seht ihr das? Es ging ja darum, dass ich über den Paketmanager Node nicht deinstallieren konnte (Paket »node« ist nicht installiert, wird also auch nicht entfernt.)

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

                @Thomas-Braun

                Danke. Ja, ich weiß ich installiere quasi 2 mal hintereinander. Bei der installation via apt/dpkg stellen sich meine Versionen nicht um, dennoch versuche ich aber grundsätzlich es in sync zu halten. Nur mit "n" klappt bei mir der Versionsumstieg.

                Das war von anfang an so?!?

                pi@ioBrokerPIB3:~ $ echo $PATH
                /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games

                Unter $HOME egal ob pi oder root habe ich allerdings kein "n" Verzeichnis.

                node/8.16.0
                node/10.16.3
                node/10.17.0
                node/10.19.0
                

                ο node/12.16.3

                root@ioBrokerPIB3:/usr/local/n/versions/node# ls
                10.16.3 10.17.0 10.19.0 12.16.3 8.16.0

                root@ioBrokerPIB3:/usr/bin#
                lrwxrwxrwx 1 root root 24 Nov 13 07:46 nodejs -> /etc/alternatives/nodejs
                lrwxrwxrwx 1 root root 38 Apr 29 18:27 npm -> ../lib/node_modules/npm/bin/npm-cli.js
                -rwxr-xr-x 1 root root 40517516 Apr 28 11:22 node

                root@ioBrokerPIB3:/usr/bin# ls -la /etc/alternatives/nodejs
                lrwxrwxrwx 1 root root 13 Nov 13 07:46 /etc/alternatives/nodejs -> /usr/bin/node

                Also von meinem Standpunkt sieht es so aus, als hätte "n" gelöst, was bei apt fehlschlug, ohne error. Nämlich, dass die version auch vorhanden und aktiv ist.

                Ich weiß leider nicht mehr und lerne gerne dazu. Aber erst "n" hat es wie gesagt für mich gelöst.

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

                  @samsungfreak

                  nodejs -v
                  node -v
                  npm -v
                  apt policy nodejs
                  

                  Als user, nicht als root und auch nicht per sudo!

                  Es ging ja darum, dass ich über den Paketmanager Node nicht deinstallieren konnte (Paket »node« ist nicht installiert, wird also auch nicht entfernt.)

                  Das ist bei dem nodejs von nodesource korrekt. node ist da kein eigenes Paket sondern kommt huckepack bei nodejs mit. Ist in meinem System natürlich auch nicht (als autarkes Paket über den Paketmanager) installiert:

                  pi@raspberrypi:/opt/iobroker $ apt policy node
                  node:
                    Installiert:           (keine)
                    Installationskandidat: 0.3.2-7.4
                    Versionstabelle:
                       0.3.2-7.4 500
                          500 http://raspbian.raspberrypi.org/raspbian buster/main armhf Packages
                  

                  Im $PATH liegt das natürlich:

                  pi@raspberrypi:~ $ node -v
                  v12.16.3
                  
                  S 1 Reply Last reply Reply Quote 0
                  • Thomas Braun
                    Thomas Braun Most Active @realwax last edited by Thomas Braun

                    @realwax said in Node JS Update von v8 auf V10 schlägt fehl:

                    Nur mit "n" klappt bei mir der Versionsumstieg.
                    Das war von anfang an so?!?

                    Das glaube ich nicht. Bei mir läuft ein Raspbian auch ohne n. Da ist irgendwas bei dir falsch gelaufen.

                    Offenbar installiert n (in einer root-Shell ohne ENVIRONMENT) direkt in /usr/local/n und linkt dann über alternatives nach /usr/bin/node
                    Da liegt aber eigentlich schon das binary von der nodesource-Installation.
                    Ist jedenfalls in meinem System (ohne n) so:

                    ls -la /usr/bin/node & ls -la /usr/bin/nodejs
                    -rwxr-xr-x 1 root root 40517516 Apr 28 11:22 /usr/bin/node
                    lrwxrwxrwx 1 root root 24 Apr 12 11:14 /usr/bin/nodejs -> /etc/alternatives/nodejs
                    

                    Bei dir kannst du das mal mit

                    pi@raspberrypi:~ $ update-alternatives --display nodejs
                    nodejs - automatischer Modus
                      beste Version des Links ist /usr/bin/node
                      Link verweist zur Zeit auf /usr/bin/node
                      Link nodejs ist /usr/bin/nodejs
                      Slave nodejs.1.gz ist /usr/share/man/man1/nodejs.1.gz
                    /usr/bin/node - Priorität 50
                      Slave nodejs.1.gz: /usr/share/man/man1/node.1.gz
                    

                    anschauen.

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

                      @Thomas-Braun said in Node JS Update von v8 auf V10 schlägt fehl:

                      update-alternatives --display nodejs

                      Das stimmt schon - ich hatte Probleme über den "normalen" Weg. Mit "n" lieft es dann.

                      pi@ioBrokerPIB3:~ $ update-alternatives --display nodejs
                      nodejs - automatischer Modus
                      beste Version des Links ist /usr/bin/node
                      Link verweist zur Zeit auf /usr/bin/node
                      Link nodejs ist /usr/bin/nodejs
                      Slave nodejs.1.gz ist /usr/share/man/man1/nodejs.1.gz
                      /usr/bin/node - Priorität 50
                      Slave nodejs.1.gz: /usr/share/man/man1/node.1.gz

                      pi@ioBrokerPIB3:~ $ ls -la /usr/bin/node & ls -la /usr/bin/nodejs
                      -rwxr-xr-x 1 root root 40517516 Apr 28 11:22 /usr/bin/node
                      lrwxrwxrwx 1 root root 24 Nov 13 07:46 /usr/bin/nodejs -> /etc/alternatives/nodejs

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

                        @realwax An deiner Stelle würde ich beim nächsten Update mal versuchen das ohne n hinzubekommen. Das muss gehen, wenn man es richtig anfängt.

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

                          @Thomas-Braun
                          Klar, hast du eine Idee wie? Nach der normalen installation, obwohl ohne fehler, geben mir node und npm -v die alten Versionen aus. Ich konnte es nur so lösen. Aber ich bin auch nicht tief in der Pfadstruktur der Installtion, versionswechsel etc drinnen. Das ist die eine oder andere Stunde arbeit und n macht den Job ohne probleme.
                          Wenn du einen guten Tipp hast versuche ich n loszuwerden. Dabei ist das genau mein Tipp wenn wer Probleme hat.

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

                            @realwax Dazu müsste ich dir bei einem Update mal 'über die Schultern' schauen, um genauer zu sehen was du da für ein Setup hast und was da ggf. an Meldungen zurückkommt. Wenn der Paketmanager sauber aufgesetzt und genutzt wird ist ein update eine Sache von Sekunden, ein Versionsupgrade dauert dann unwesentlich länger. Lass es mal wenige Minuten sein.

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

                              @Thomas-Braun sagte in Node JS Update von v8 auf V10 schlägt fehl:

                              @samsungfreak

                              nodejs -v
                              node -v
                              npm -v
                              apt policy nodejs
                              

                              Als user, nicht als root und auch nicht per sudo!

                              Es ging ja darum, dass ich über den Paketmanager Node nicht deinstallieren konnte (Paket »node« ist nicht installiert, wird also auch nicht entfernt.)

                              Das ist bei dem nodejs von nodesource korrekt. node ist da kein eigenes Paket sondern kommt huckepack bei nodejs mit. Ist in meinem System natürlich auch nicht (als autarkes Paket über den Paketmanager) installiert:

                              pi@raspberrypi:/opt/iobroker $ apt policy node
                              node:
                                Installiert:           (keine)
                                Installationskandidat: 0.3.2-7.4
                                Versionstabelle:
                                   0.3.2-7.4 500
                                      500 http://raspbian.raspberrypi.org/raspbian buster/main armhf Packages
                              

                              Im $PATH liegt das natürlich:

                              pi@raspberrypi:~ $ node -v
                              v12.16.3
                              

                              Das sieht irgendwie nur so zu 50% gut aus. Oh man... (keine Angabe der Versionstabelle)..oder wie siehst du das?

                              Testuser123@Broker:~$ nodejs -v
                              v12.16.3
                              Testuser123@Broker:~$ node -v
                              v12.16.3
                              Testuser123@Broker:~$ npm -v
                              6.14.4
                              Testuser123@Broker:~$ apt policy node
                              node:
                                Installiert:           (keine)
                                Installationskandidat: (keine)
                                Versionstabelle:
                              
                              
                              
                              Thomas Braun 1 Reply Last reply Reply Quote 0
                              • Thomas Braun
                                Thomas Braun Most Active @samsungfreak last edited by

                                @samsungfreak Ist eigentlich ok, je nach Distribution.
                                Mach mal den Gegencheck:

                                sudo apt update
                                apt policy nodejs
                                
                                S 1 Reply Last reply Reply Quote 0
                                • S
                                  samsungfreak @Thomas Braun last edited by

                                  @Thomas-Braun sagte in Node JS Update von v8 auf V10 schlägt fehl:

                                  @samsungfreak Ist eigentlich ok, je nach Distribution.
                                  Mach mal den Gegencheck:

                                  sudo apt update
                                  apt policy nodejs
                                  

                                  Ok stimmt das sieht gut aus. Musste es aber "leider" als root ausführen damit mein Testuser keine apt Kommandos ausführen darf:

                                  root@Broker:~# sudo apt update
                                  OK:1 http://security.debian.org stretch/updates InRelease
                                  Ign:2 http://ftp.de.debian.org/debian stretch InRelease
                                  OK:3 http://ftp.de.debian.org/debian stretch-updates InRelease
                                  OK:4 https://deb.nodesource.com/node_12.x stretch InRelease
                                  OK:5 http://ftp.de.debian.org/debian stretch Release
                                  Paketlisten werden gelesen... Fertig
                                  Abhängigkeitsbaum wird aufgebaut.
                                  Statusinformationen werden eingelesen.... Fertig
                                  Alle Pakete sind aktuell.
                                  root@Broker:~#
                                  root@Broker:~# apt policy nodejs
                                  nodejs:
                                    Installiert:           12.16.3-1nodesource1
                                    Installationskandidat: 12.16.3-1nodesource1
                                    Versionstabelle:
                                   *** 12.16.3-1nodesource1 500
                                          500 https://deb.nodesource.com/node_12.x stretch/main amd64 Packages
                                          100 /var/lib/dpkg/status
                                       4.8.2~dfsg-1 500
                                          500 http://ftp.de.debian.org/debian stretch/main amd64 Packages
                                  
                                  
                                  Thomas Braun 1 Reply Last reply Reply Quote 0
                                  • Thomas Braun
                                    Thomas Braun Most Active @samsungfreak last edited by Thomas Braun

                                    @samsungfreak
                                    Der testuser123 fehlt in der Gruppe 'sudo'.

                                    usermod -aG sudo Testuser123
                                    

                                    alternativ

                                    adduser Testuser123 sudo
                                    

                                    Hast du keinen 'ordentlichen' ersten user angelegt, als du Debian installiert hast?

                                    Und nochmal: Wenn du schon root bist, dann braucht es da auch kein 'sudo' mehr vor den commands.

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

                                      @Thomas-Braun sagte in Node JS Update von v8 auf V10 schlägt fehl:

                                      @samsungfreak
                                      Der testuser123 fehlt in der Gruppe 'sudo'.

                                      usermod -aG sudo Testuser123
                                      

                                      alternativ

                                      adduser Testuser123 sudo
                                      

                                      Hast du keinen 'ordentlichen' ersten user angelegt, als du Debian installiert hast?

                                      Und nochmal: Wenn du schon root bist, dann braucht es da auch kein 'sudo' mehr vor den commands.

                                      Mit dem zweiten Befehl hat es geklappt:

                                      Testuser123@Broker:~$ sudo apt update
                                      
                                      Wir gehen davon aus, dass der lokale Systemadministrator Ihnen die
                                      Regeln erklärt hat.  Normalerweise läuft es auf drei Regeln hinaus:
                                      
                                          #1) Respektieren Sie die Privatsphäre anderer.
                                          #2) Denken Sie nach, bevor Sie tippen.
                                          #3) Mit großer Macht kommt große Verantwortung.
                                      
                                      [sudo] Passwort für Testuser123:
                                      Ign:1 http://ftp.de.debian.org/debian stretch InRelease
                                      Holen:2 http://ftp.de.debian.org/debian stretch-updates InRelease [91,0 kB]
                                      OK:3 http://ftp.de.debian.org/debian stretch Release
                                      Holen:4 http://security.debian.org stretch/updates InRelease [94,3 kB]
                                      OK:5 https://deb.nodesource.com/node_12.x stretch InRelease
                                      Es wurden 185 kB in 1 s geholt (95,1 kB/s).
                                      Paketlisten werden gelesen... Fertig
                                      Abhängigkeitsbaum wird aufgebaut.
                                      Statusinformationen werden eingelesen.... Fertig
                                      Alle Pakete sind aktuell.
                                      Testuser123@Broker:~$ apt policy nodejs
                                      nodejs:
                                        Installiert:           12.16.3-1nodesource1
                                        Installationskandidat: 12.16.3-1nodesource1
                                        Versionstabelle:
                                       *** 12.16.3-1nodesource1 500
                                              500 https://deb.nodesource.com/node_12.x stretch/main amd64 Packages
                                              100 /var/lib/dpkg/status
                                           4.8.2~dfsg-1 500
                                              500 http://ftp.de.debian.org/debian stretch/main amd64 Packages
                                      
                                      

                                      Nein leider habe ich damals noch keinen User angelegt und alles via root User erledigt. Werde ich in der Zukunft ändern:) Aber ich denke mein Problem worauf dieses Thema sich bezieht ist erledigt und ich habe das System sauber auf die Node JS Version 12 aktualisieren können mit eurer Hilfe:)

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

                                        @samsungfreak Dann sollte das nun passen in dem System.
                                        nodejs (im 12er-Zweig) kannst du jetzt mit

                                        sudo apt update
                                        sudo apt upgrade
                                        

                                        aktuell halten. Zusammen mit dem restlichen System.

                                        realwax S 2 Replies Last reply Reply Quote 0
                                        • realwax
                                          realwax @Thomas Braun last edited by

                                          @Thomas-Braun Ja, alles an sich standard installationen mit apt/dpkg. Ich werde vermutlich bei meiner hybrid lösung bleiben, sofern es keine Probleme gibt und wenn, dann gehe das in der Tiefe an. Gerne mit Schulter schauen, wenn du Zeit und Lust hast.

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

                                            @Thomas-Braun sagte in Node JS Update von v8 auf V10 schlägt fehl:

                                            @samsungfreak Dann sollte das nun passen in dem System.
                                            nodejs (im 12er-Zweig) kannst du jetzt mit

                                            sudo apt update
                                            sudo apt upgrade
                                            

                                            aktuell halten. Zusammen mit dem restlichen System.

                                            Danke für die Info!

                                            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.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            nodejs 8 nodejs10
                                            6
                                            48
                                            2162
                                            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