Node.js und npm Update auf Raspberry Pi mit Homebridge (so Klappt´s auf alle Fälle)

  • Node.js Update auf Raspberry Pi mit Homebridge


    Gewisse Plugins für Homebridge benötigen höhere Node.js Versionen

    #als die bei der Installation von Homebridge mitgelieferte Version


    Z.b. Plugin homebridge-shelly (braucht Minimum node.js v8.0)


    Um das Update erfolgreich durchzuführen habe ich hier ein kurzes Walk Through

    zusammengestellt mit allen Terminalbefehlen Schritt für Schritt


    1. Verbinden mit dem Raspberry Pi über SSH Terminal
    2. Homebridge stoppen
    3. sudo npm cache clean -f
    4. sudo npm install -g n
    5. sudo n 9.3.0 (Versionsnummern zu finden auf https://nodejs.org/en/download/releases/)
    6. sudo npm install -g --unsafe-perm [email protected]
    7. sudo npm i [email protected] -g
    8. sudo reboot
    9. Neu verbinden mit dem Raspberry Pi über SSH Terminal
    10. cd /usr/local/lib/node_modules/
    11. sudo npm rebuild --unsafe-perm. (Achtung geht sehr lange)
    12. cd
    13. Homebridge -I



    Viel Erfolg!

  • sudo n 9.3.0 (Versionsnummern zu finden auf https://nodejs.org/en/download/releases/)

    Ich empfehle, gleich die letzte Long Time Support-Version zu nehmen mit


    sudo n lts (installiert node 10.5.0)


    Ansonsten ist dem Beitrag von Bobby Slope nichts hinzuzufügen.

    Stefan

  • Wie geht das denn bei QNAP-Docker?

    • Ich bin sowohl Linux als auch Homebridge Newbie.
    • Falls spezielle Logs benötigt werden, bitte eine Info wie, wo ich die herbekomme :/.
    • QNAP TS-453BT3

    VG

    Speedy_99

  • Habe gerade versucht node.js der Anleitung nach upzudaten, doch bei sudo npm rebuild --unsafe-perm. kriege ich Fehlermeldungen. Wohl keine Schreibrechte...

    Bei mir läuft HOOBS.


    Kann jmd. helfen?



    [email protected]:~ $ cd /usr/local/lib/node_modules/

    [email protected]:/usr/local/lib/node_modules $ sudo npm rebuild --unsafe-perm.


    > @nestjs/[email protected] postinstall /usr/local/lib/node_modules/homebridge-config-ui-x/node_modules/@nestjs/core

    > opencollective || exit 0


    Thanks for installing nest ?

                                Please consider donating to our open collective

    to help us maintain this package.


    Number of contributors: 103

    Number of backers: 210

    Annual budget: $68,829

    Current balance: $7,201


    ? Become a partner: https://opencollective.com/nest/donate



    > [email protected] install /usr/local/lib/node_modules/homebridge-config-ui-x/node_modules/node-pty-prebuilt-multiarch

    > prebuild-install || node scripts/install.js


    prebuild-install WARN install EACCES: permission denied, access '/root/.npm'

    gyp ERR! clean error

    gyp ERR! stack Error: EACCES: permission denied, rmdir 'build'

    gyp ERR! System Linux 4.19.58-v7+

    gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"

    gyp ERR! cwd /usr/local/lib/node_modules/homebridge-config-ui-x/node_modules/node-pty-prebuilt-multiarch

    gyp ERR! node -v v10.16.1

    gyp ERR! node-gyp -v v5.0.3

    gyp ERR! not ok

    npm ERR! code ELIFECYCLE

    npm ERR! errno 1

    npm ERR! [email protected] install: `prebuild-install || node scripts/install.js`

    npm ERR! Exit status 1

    npm ERR!

    npm ERR! Failed at the [email protected] install script.

    npm ERR! This is probably not a problem with npm. There is likely additional logging output above.


    npm ERR! A complete log of this run can be found in:

    npm ERR! /root/.npm/_logs/2019-08-06T19_44_08_844Z-debug.log

    [email protected]:/usr/local/lib/node_modules $ cd

    [email protected]:~ $ Homebridge -I

    -bash: Homebridge: command not found

    [email protected]:~ $ sudo systemctl restart homebridge

    [email protected]:~ $ packet_write_wait: Connection to 192.168.1.108 port 22: Broken pipe

  • Versuchs mal als root:

    sudo su -

    cd /usr/local/lib/node_modules/

    sudo npm rebuild --unsafe-perm


    Vielleicht geht das besser.


    Stefan

  • bei mir kommt bei dieser variante leider auch Fehlermldeungen und Homebridge startet danach nicht mehr, müsste aber mal dringend Node upgraden. Gibt es zu der Variaten noch Alternativen?


  • sudo su - gleich als schritt 1 od vor schritt 10? hänge leider fest

  • der anfang der fehlermeldung (leider passt nicht alles rein)


    bin für jeden rat sehr dankbar

  • hallo, ich habe gerade versucht bei meiner Installation node 10.4.0 auf die aktuelle lts version zu aktualisieren und bekomme dabei die folgenden Fehlermeldungen und natürlich startet meine Homebridge Version 0.4.50 nicht mehr.

    Hat jemand dazu eine Idee?

    Die Homebridge wurde vorher gestoppt.


    [email protected]:~ $ sudo npm cache clean -f

    npm WARN using --force I sure hope you know what you are doing.

    [email protected]:~ $ do npm install -g n

    -bash: Syntaxfehler beim unerwarteten Wort `do'

    [email protected]:~ $ sudo npm install -g n

    /usr/local/bin/n -> /usr/local/lib/node_modules/n/bin/n

    + [email protected]

    updated 1 package in 1.163s

    [email protected]:~ $ sudo n lts


    installing : node-v12.14.1

    mkdir : /usr/local/n/versions/node/12.14.1

    fetch : https://nodejs.org/dist/v12.14….14.1-linux-armv7l.tar.gz


    mit diesen Meldungen kann ich nichts anfangen.


    node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by node)

    node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by node)

    /usr/local/bin/node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /usr/local/bin/node)

    /usr/local/bin/node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /usr/local/bin/node)

    installed : (with npm )


    [email protected]:~ $

    [email protected]:~ $

    [email protected]:~ $

    [email protected]:~ $

    [email protected]:~ $ sudo npm install -g --unsafe-perm

    node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by node)

    node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by node)

    [email protected]:~ $ sudo npm i -g

    node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by node)

    node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by node)

    [email protected]:~ $

    [email protected]:~ $

    [email protected]:~ $ node -v

    node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by node)

    node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by node)

    [email protected]:~ $

    [email protected]:~ $

    [email protected]:~ $ sudo /etc/init.d/homebridge restart

    Homebridge starting

    Homebridge is not running

    [email protected]:~ $ sudo /etc/init.d/homebridge staus

    Usage: /etc/init.d/homebridge {start|stop|status|restart}

    [email protected]:~ $ sudo /etc/init.d/homebridge status

    Homebridge is not running

    [email protected]:~ $ sudo /etc/init.d/homebridge restart

    Homebridge starting

    Homebridge is not running

    [email protected]:~ $ sudo /etc/init.d/homebridge restart

    Homebridge starting

    Homebridge is not running



    Bin für jeden Vorschlag dankbar, habe weil ich gerade nicht weiterkomme, erstmal wieder mein Backup zurückgespielt :)

  • Deinen neuen Post habe ich hier in den vorhandenen Thread verschoben. Es braucht keinen neuen Beitrag. Es gibt Einige zu dem Thema.


    Ich gehe bei Node Updates wie folgt vor und das hat bei mir bisher immer ganz gut funktioniert.


    1. sudo systemctl stop homebridge

    2. sudo npm i [email protected] -g (#npm Update)

    3. sudo npm cache clean -f

    4. sudo npm install -g n (#n Update)

    5. sudo n lts (#alternativ: lates oder stable oder Versionsnummer Node einsetzen)

    6. sudo npm install -g --unsafe-perm [email protected]

    7. sudo reboot

    8. node -v (Versionsnummer überprüfen)


    Falls Probleme mit node bzw. grundsätzlich zu empfehlen nach Update auf größere Version z.B. von 11.x auf 12.x


    cd /usr/local/lib/node_modules/

    sudo npm rebuild --unsafe-perm


    Vielleicht ist Dir das eine Hilfe.

  • Hallo DJay,

    ich bin nach dieser (deiner Anleitung) vorgegangen und habe erst eine Warnung, danach nach dem Install

    Befehl diese Meldung erhalten.


    [email protected]:~ $ sudo npm install -g --unsafe-perm

    node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by node)

    node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by node)

  • elo111


    Hi,

    kann es sein, dass du das Betriebssystem Debian Jessie verwendest?


    Schau mal hier:

    https://github.com/nvm-sh/nvm/issues/2044



    Ich war bis vor 3 Monaten auch noch auf Jessi und ich hatte auch Fehlermeldungen, ich meine sogar, als ich von [email protected] auf die damalige lts version wollte......


    Ich habe dann die homebridge umgezogen auf das neuste Debisn Buster und dann lief das node-update einwandfrei durch......

  • hallo Kohle_81,

    ja ich verwende wie du vermutest „ Jessie“, ich werde morgen versuchen nach deinem Link ein Update auf Buster durchzuführen, mal sehen ob es dann mit den node Update klappt.

    Schon mal vielen Dank für den Tipp.

  • hallo Kohle_81,

    ja ich verwende wie du vermutest „ Jessie“, ich werde morgen versuchen nach deinem Link ein Update auf Buster durchzuführen, mal sehen ob es dann mit den node Update klappt.

    Schon mal vielen Dank für den Tipp.

    Drück dir die Daumen 👍

  • Hallo Community,

    leider funktioniert "auf einmal" meine Homebridge nicht mehr... und ich bin ratlos.


    Folgende Fehler bekomme ich beim Booten



    Danach bootet der Pi wieder von vorne... mit den gleichen Fehlern. Ich denke es hat was damit zu tin, dass es unterschiedliche NODE Versionen installiert sind... Ich weiß aber nicht, wie ich dieses Problem lösen soll.


    Bedanke mich schon einmal für eure Hilfe!


    Viele Grüße

    Leon