Website-Suche

NVM – Installieren und verwalten Sie mehrere Node.js-Versionen unter Linux


Node Version Manager (kurz NVM) ist ein einfaches Bash-Skript zum Verwalten mehrerer aktiver node.js-Versionen auf Ihrem Linux-System. Es ermöglicht Ihnen, mehrere node.js-Versionen zu installieren und alle zur Installation verfügbaren Versionen sowie alle auf Ihrem System installierten Versionen anzuzeigen.

Nvm unterstützt auch die Ausführung einer bestimmten node.js-Version und kann den Pfad zur ausführbaren Datei zum Installationsort und vieles mehr anzeigen.

In diesem Artikel erklären wir, wie Sie Node Version Manager (NVM) installieren, um mehrere aktive node.js-Versionen auf Ihrer Linux-Distribution zu verwalten.

Installieren von NVM (Node Version Manager) unter Linux

Um nvm auf Ihrer Linux-Distribution zu installieren oder zu aktualisieren, können Sie das Autoinstallationsskript wie gezeigt mit den Befehlszeilentools „curl“ oder „wget“ herunterladen.

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
OR
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash

Das obige Autoinstallationsskript klont das nvm-Repository nach ~/.nvm in Ihrem Home-Verzeichnis und fügt die erforderlichen Quellbefehle zu Ihren Shell-Startskripten hinzu, z. B. ~/ .bash_profile, ~/.zshrc, ~/.profile oder ~/.bashrc, je nachdem, welches Shell-Programm Sie verwenden verwenden, wie in der folgenden Ausgabe gezeigt.

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 15916  100 15916    0     0  34227      0 --:--:-- --:--:-- --:--:-- 34301
=> Downloading nvm from git to '/root/.nvm'
=> Cloning into '/root/.nvm'...
remote: Enumerating objects: 359, done.
remote: Counting objects: 100% (359/359), done.
remote: Compressing objects: 100% (305/305), done.
remote: Total 359 (delta 40), reused 168 (delta 28), pack-reused 0
Receiving objects: 100% (359/359), 219.46 KiB | 6.86 MiB/s, done.
Resolving deltas: 100% (40/40), done.
* (HEAD detached at FETCH_HEAD)
  master
=> Compressing and cleaning up git repository

=> Appending nvm source string to /root/.bashrc
=> Appending bash_completion source string to /root/.bashrc
=> You currently have modules installed globally with `npm`. These will no
=> longer be linked to the active version of Node when you install a new node
=> with `nvm`; and they may (depending on how you construct your `$PATH`)
=> override the binaries of modules installed with `nvm`:
...

Sobald die Installation abgeschlossen ist, schließen Sie Ihr aktuelles Terminalfenster und öffnen Sie ein neues. Alternativ laden Sie einfach Ihre Shell-Profildatei als Quelle für nvm. Wenn Sie beispielsweise Bash verwenden, führen Sie den folgenden Befehl aus:

source ~/.bashrc
OR
source ~/.profile

Überprüfen Sie als Nächstes mit dem folgenden Befehl, ob nvm auf Ihrem System installiert wurde.

command -v nvm

nvm

Wenn die Installation erfolgreich war, wird die Ausgabe als „nvm“ angezeigt.

Installieren Sie mehrere Node.js-Versionen mit NVM

Jetzt ist es an der Zeit zu lernen, wie man Node Version Manager unter Linux verwendet. Führen Sie den folgenden Befehl aus, um die neueste Version von node herunterzuladen, zu kompilieren und zu installieren:

nvm install node 

Beachten Sie, dass im obigen Befehl „node“ ein Alias für die neueste Version ist.

Downloading and installing node v20.0.0...
Downloading https://nodejs.org/dist/v20.0.0/node-v20.0.0-linux-x64.tar.xz...
########################################################################## 100.0%
Computing checksum with sha256sum
Checksums matched!
Now using node v20.0.0 (npm v9.6.4)
Creating default alias: default -> node (-> v20.0.0)

Um eine bestimmte „Knoten“-Version zu installieren, listen Sie zunächst die verfügbaren Knotenversionen auf und installieren Sie dann die Version wie gezeigt.

nvm ls-remote
nvm install 19.0.0  
Downloading and installing node v19.0.0...
Downloading https://nodejs.org/dist/v19.0.0/node-v19.0.0-linux-x64.tar.xz...
########################################################################## 100.0%
Computing checksum with sha256sum
Checksums matched!
Now using node v19.0.0 (npm v8.19.2)

Sobald Sie eine Node.js-Version mit nvm installiert haben, sollte das System nun auf Node.js und npm verweisen.-Versionen unter nvm. Sie können den Speicherort der verwendeten node- und npm-Binärdatei/des verwendeten Befehls überprüfen, indem Sie den Befehl which wie folgt ausführen:

which node
/root/.nvm/versions/node/v20.0.0/bin/node

# which npm
/root/.nvm/versions/node/v20.0.0/bin/npm

# node -v
v20.0.0

# npm -v
9.6.4

Auflisten der installierten Node.js-Versionen

Sie können alle installierten Versionen mit dem folgenden Befehl überprüfen:

nvm ls
->      v19.0.0
        v20.0.0
         system
default -> node (-> v20.0.0)
iojs -> N/A (default)
unstable -> N/A (default)
node -> stable (-> v20.0.0) (default)
stable -> 20.0 (-> v20.0.0) (default)
lts/* -> lts/hydrogen (-> N/A)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.24.1 (-> N/A)
lts/erbium -> v12.22.12 (-> N/A)
lts/fermium -> v14.21.3 (-> N/A)
lts/gallium -> v16.20.0 (-> N/A)
lts/hydrogen -> v18.16.0 (-> N/A)

Wählen Sie Knotenversion für ein Projekt

Hier wird nvm interessant. Jetzt können Sie nvm verwenden, um je nach Anforderungen die Version von node.js auszuwählen, die Sie für jedes Projekt verwenden möchten, an dem Sie arbeiten. Sehen wir uns an, wie das geht, wie unten erklärt.

Öffnen Sie mehrere Terminals und wechseln Sie in die Projekt-Verzeichnisse. Für dieses Handbuch haben wir zwei Projekte unter ~/projects/app-server und ~/projects/test-ui, die fälschlicherweise die Knotenversionen 19.0.0 und 20.0.0 erfordern .

------------ Project 1 ------------ 
cd ~/projects/api-server
nvm use 19.0.0
node -v

------------ Project 2 ------------
cd ~/projects/test-ui
nvm use 20.0.0
node -v

Wenn Sie beispielsweise ein globales Paket installiert haben, während Version 19.0.0 aktiv ist, müssen Sie beim Wechsel zu Version 20.0.0 das globale Paket unter der neuen Version neu installieren.

Wichtig ist, dass Sie den Pfad zur ausführbaren Datei, in der eine bestimmte Knotenversion installiert wurde, wie folgt anzeigen können:

nvm which 20.0.0
nvm which 19.0.0
nvm which system  #check system-installed version of a node using “system” alias

Legen Sie die Standardversion von Node.js unter Linux fest

Um außerdem manuell eine Standardknotenversion festzulegen, die in jeder neuen Shell verwendet werden soll, verwenden Sie wie gezeigt den Alias „default“.

nvm alias default 20.0.0
nvm alias default system
nvm alias default 19.0.0

Deinstallation der Node.js-Version unter Linux

Um eine Version von Node.js zu deinstallieren oder zu entfernen, geben Sie den folgenden Befehl ein (vergessen Sie nicht, 19.0.0 durch die Versionsnummer zu ersetzen):

nvm uninstall 19.0.0

NVM unter Linux deinstallieren

Um nvm manuell von Ihrem System zu entfernen, führen Sie die folgenden Befehle aus:

rm -rf "$NVM_DIR"
OR
rm -rf ~/.nvm

Bearbeiten Sie als Nächstes ~/.bashrc (oder die entsprechende Shell-Profil-Konfigurationsdatei, wie oben aufgeführt) und entfernen Sie die folgenden Konfigurationszeilen:

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[[ -r $NVM_DIR/bash_completion ]] && \. $NVM_DIR/bash_completion

Weitere Informationen finden Sie unter nvm --help oder gehen Sie zum Node Version Manager Github-Repository: https://github.com/nvm-sh/nvm.

Das ist alles! Node Version Manager ist ein einfaches Bash-Skript zum Verwalten mehrerer aktiver node.js-Versionen auf Ihrem Linux-System. Nutzen Sie das Feedback-Formular unten, um Fragen zu stellen oder uns Ihre Kommentare mitzuteilen.