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 Quelle?

    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 Quelle?

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

      Hallo,

      ich verwende ioBroker auf einem ubuntu v18 (Server). Hier habe ich Schwierigkeiten mit dem Update von node.js:

      ioBroker.info sagt: v8.15.0 (There is a newer version: v8.16.2 - Recommended version v10.17.0)

      Das ist schon einmal merkwürdig, da:

      root@vm:/opt/iobroker# node -v
      v8.16.2

      aber immerhin:

      root@vm:/opt/iobroker# nodejs --version
      v8.15.0

      ... so also erklärt sich wenigstens die Ausgabe des ioBroker-Info-Moduls.

      Nun habe ich nach der Anleitung hier versucht, node.js v10 zu installieren. Das ging total in die Hose: Danach startete zwar ioBroker noch, aber der sql-Adapter beklagte sich über die neue Version und "npm rebuild" lief auch nicht mehr - irgendein Rechte-Fehler.

      Kurz - ich bin auf ein Backup zurück und mein System läuft jetzt wieder mit v8.15.0 (laut ioBroker) und v8.16.2 (laut nvm).

      Wie sollte ich denn beim nächsten Versuch am besten vorgehen? Offenbar zerschießt der Anlauf über apt-get irgendetwas. Sollte ich die v10 nächstesmal per nvm installieren? Aber wie werde ich dann die alte v8.15.0 los, die noch irgendwo im System schlummert? Kann ich die einfach verlustfrei per apt-get purge entfernen? Und findet ioBroker dann auch statt dessen die neue Version, die über nvm installiert wurde?

      MfG

      Homoran arteck 2 Replies Last reply Reply Quote 0
      • Homoran
        Homoran Global Moderator Administrators @150d last edited by

        @150d
        ggf. hast du 2 node-Versionen laufen.
        gerade die 8.15.macht mich stutzig.

        Das ist hier schon mal vorgekommen, dass Ubuntu ein eigenes Repo hat und daraus installiert und deine Installation nicht sauber durchgeführt wurde

        1 Reply Last reply Reply Quote 0
        • arteck
          arteck Developer Most Active @150d last edited by arteck

          @150d da muss ich homoran zustimmen .. du hast 2 Versionen laufen... das wird auf dauer nicht gut gehen

          ls -l /usr/local/bin/node*
          ls -l /usr/bin/node*
          

          zeigmal die Ausgabe

          1 1 Reply Last reply Reply Quote 0
          • 1
            150d @arteck last edited by 150d

            @arteck

            Gerne:

            root@vm:~# ls -l /usr/local/bin/node*
            ls: Zugriff auf '/usr/local/bin/node*' nicht möglich: Datei oder Verzeichnis nicht gefunden
            
            root@vm:~# ls -l /usr/bin/node*
            -rwxr-xr-x 1 root root 34990576 Dez 26  2018 /usr/bin/node
            lrwxrwxrwx 1 root root       24 Okt  5  2018 /usr/bin/nodejs -> /etc/alternatives/nodejs
            

            Interessant ist vielleicht auch das:

            root@vm:~# nvm ls
            ->      v8.16.2
                     system
            default -> 8.16.2 (-> v8.16.2)
            node -> stable (-> v8.16.2) (default)
            stable -> 8.16 (-> v8.16.2) (default)
            iojs -> N/A (default)
            lts/[Stern] -> lts/erbium (-> N/A)
            lts/argon -> v4.9.1 (-> N/A)
            lts/boron -> v6.17.1 (-> N/A)
            lts/carbon -> v8.16.2
            lts/dubnium -> v10.17.0 (-> N/A)
            lts/erbium -> v12.13.1 (-> N/A)
            
            root@vm:~# nodejs -v
            v8.15.0
            

            Daß da zwei Versionen installiert sind, dürfte klar sein; aber warum verwendet ioBroker nicht die neuere von beiden? Wenn nvm schon behauptet, daß die v8.16.2 der "default" sei?

            MfG

            paul53 1 Reply Last reply Reply Quote 0
            • paul53
              paul53 @150d last edited by paul53

              @150d sagte:

              /usr/bin/nodejs -> /etc/alternatives/nodejs

              Das ist ein Symlink, den Du "umbiegen" solltest auf /usr/bin/node (z.B. mit WinSCP).

              @150d sagte in node.js update Quelle?:

              aber warum verwendet ioBroker nicht die neuere von beiden?

              Wenn ioBroker neu gestartet wird, passiert das auch, denn ioBroker verwendet node und nicht nodejs.

              1 1 Reply Last reply Reply Quote 0
              • 1
                150d @paul53 last edited by 150d

                Das ist ein Symlink, den Du "umbiegen" solltest auf /usr/bin/node (z.B. mit WinSCP).

                Ah, danke.

                Das habe ich jetzt getan:

                root@vm:/opt/iobroker# ls -l /usr/bin/node*
                -rwxr-xr-x 1 root root 34990576 Dez 26  2018 /usr/bin/node
                lrwxrwxrwx 1 root root       13 Dez 15 16:11 /usr/bin/nodejs -> /usr/bin/node
                

                ... und ioBroker neu gestartet (iobroker stop/iobroker start).

                ioBroker.info zeigt aber das selbe wie zuvor:

                Node.js    v8.15.0 (There is a newer version: v8.16.2 - Recommended version v10.17.0)
                

                MfG

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

                  In meiner Info wird auch eine neue Version angezeigt.

                  Bildschirmfoto 2019-12-29 um 12.37.50.png

                  Mit
                  iobroker update
                  und
                  iobroker upgrade self
                  wird mir aber ausgegeben, dass alle Adapter aktuell sind.
                  Kann ich die Node.js auch anders aktualisieren?

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

                    @StM47

                    https://forum.iobroker.net/topic/22867/how-to-node-js-für-iobroker-richtig-updaten

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

                      @sigi234

                      Danke!

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

                        @StM47 sagte in node.js update Quelle?:

                        @sigi234

                        Danke!

                        Bitte, aber eigentlich fast nicht zu übersehen. 😀

                        Screenshot (1095)_LI.jpg

                        1 Reply Last reply Reply Quote 0
                        • 1
                          150d last edited by

                          Ich komme hier nicht recht weiter. Zuerst hatte ich folgendes:

                          node -v
                          v8.16.2

                          nodejs -v
                          v8.15.0

                          ioBroker:
                          v8.15.0

                          Daraufhin habe den link in /usr/bin/nodejs geändert

                          von: /usr/bin/node
                          nach: /root/.nvm/versions/node/v8.16.2/bin/node (der Pfad, auf den "where node" bereits wies)

                          Jetzt habe ich:

                          node -v
                          v8.16.2

                          nodejs -v
                          v8.16.2

                          aber ioBroker immer noch:
                          v8.15.0

                          Wieso das denn nun wieder? Warum folgt ioBroker nicht dem Link?

                          MfG

                          Homoran 1 Reply Last reply Reply Quote 0
                          • Homoran
                            Homoran Global Moderator Administrators @150d last edited by

                            @150d sagte in node.js update Quelle?:

                            Wieso das denn nun wieder?

                            Weil du zweimal node an verschiedenen stellen installiert hast

                            1 1 Reply Last reply Reply Quote 0
                            • 1
                              150d @Homoran last edited by 150d

                              @Homoran Vielen Dank, auf die Idee war ich gekommen. Siehe Post #1.

                              Aber wie werde ich das Chaos los?

                              Ein Problem könnte sein, daß v8.16 unter /root installiert ist. Soll das so sein?

                              MfG

                              Homoran 1 Reply Last reply Reply Quote 0
                              • Homoran
                                Homoran Global Moderator Administrators @150d last edited by

                                @150d sagte in node.js update Quelle?:

                                Aber wie werde ich das Chaos los?

                                lies dir mal die Lösung von Paul durch:
                                https://forum.iobroker.net/topic/29718/npm-installation-nach-anleitung

                                1 Reply Last reply Reply Quote 0
                                • 1
                                  150d last edited by 150d

                                  Danke für den Link. War interessant, auch wenn er nicht direkt meinen Fall berührte:

                                  Mein Problem war offenbar, daß irgendjemand oder irgendetwas (kann ich selbst gewesen sein, aber vielleicht auch ein älteres install-script) die Version v8.16 von nodejs per NVM installiert hatte. NVM ist offenbar nur root zugänglich, und deshalb landete diese Version unter /root/.nvm. Dort kam aber der user iobroker nicht hin. Für iobroker gab es daher die v8.16 nicht, sondern nur die v8.15 (system).

                                  Wurde nun nodejs v10 per apt-get installiert, änderte das nichts: Offenbar "gewann" trotzdem die NVM-Konfiguration mit v8.16, an die iobroker nicht hinkam, und der fallback war v8.15, nicht v10.

                                  Ich habe nun (als root) per NVM die v8.16 entfernt (vorher musste "system" zur "default" gemacht werden, weil NVM die aktive Version nicht deinstallieren kann) und danach per apt-get die v10 installiert. Danach ergab sowohl "node -v" als auch "nodejs -v" die Version v10, unter root ebenso wie unter user iobroker (per sudo).

                                  Dann aber lief "npm rebuild" nicht durch (verschiedene Fehler und Abbrüche.) Hier war das Problem, daß das unter dem user iobroker ausgeführt werden muß. Ein Aufruf mit "sudo -u iobroker" reicht nicht. Darauf war ich lange nicht gekommen, weil für den user iobroker keine Shell angegeben und somit keine interaktive Anmeldung möglich ist - da das explizit so drinstand nahm ich an, daß das schon so richtig sei.

                                  War es aber nicht. Nachdem ich schließlich den Shell-Eintrag änderte und mich als user iobroker anmeldete, lief auch "nvm rebuild" ohne Fehler (mit Ausnahme einer fehlenden Bibliothek, die manuell nachinstalliert werden musste) durch.

                                  MfG

                                  Homoran 1 Reply Last reply Reply Quote 0
                                  • Homoran
                                    Homoran Global Moderator Administrators @150d last edited by

                                    @150d sagte in node.js update Quelle?:

                                    auch wenn er nicht direkt meinen Fall berührte:

                                    Doch das tat er.

                                    Du hattest zwei Installationen, warum auch immer
                                    Die mussten BEIDE deinstalliert werden. zu erkennen leider nur daran, dass die eine mit nodejs, die andere mit node zu finden war

                                    hätten beide die selbe Version gehabt wäre es schwieriger geworden.

                                    Erst nach der Deinstallation von BEIDEN node-Installationen kann die neue erfolgreich sein, ohne durch die andere maskiert zu werden.

                                    @150d sagte in node.js update Quelle?:

                                    Danach ergab sowohl "node -v" als auch "nodejs -v" die Version v10

                                    Das ist dann leider kein Garant mehr doch nicht zwei Installationen zu haben.

                                    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

                                    453
                                    Online

                                    31.8k
                                    Users

                                    80.0k
                                    Topics

                                    1.3m
                                    Posts

                                    apt-get node.js nvm
                                    6
                                    16
                                    1035
                                    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