Installer NVM sur Ubuntu 22.04 pour Node.js : méthode simple pour gérer plusieurs versions
| 📌 | Définition : NVM, pour Node Version Manager, installe Node.js dans votre espace utilisateur et permet de basculer entre plusieurs versions sans toucher au système. |
| 💡 | Gain réel : un projet legacy en Node 16, un autre en Node 20, et vous gardez un seul terminal propre au lieu d’un Frankenstein de paquets. |
| ⚙️ | Commande clé : installation via le script officiel, puis rechargement du shell pour rendre nvm disponible immédiatement. |
| 🧪 | Vérification : on contrôle nvm --version, node -v et npm -v à chaque étape utile. |
| 🧰 | Usage concret : installer Node LTS, définir une version par défaut, puis changer de version projet par projet avec .nvmrc. |
| 🚫 | À éviter : mélanger NVM avec une installation globale via apt sans savoir quelle version prend le dessus. |
Installer NVM sur Ubuntu 22.04 est la méthode la plus simple pour gérer Node.js sans se battre avec les permissions, les versions figées ou les bricolages au sudo. Si vous travaillez sur plusieurs projets, vous gagnez un vrai contrôle sur la version active, sans casser le reste du système.
Le principe est simple : NVM installe Node.js dans votre dossier personnel, charge la bonne version au démarrage du shell, puis permet de basculer en une commande. C’est exactement ce qu’il faut quand on veut installer Node LTS aujourd’hui, tester une version précise demain, puis revenir en arrière sans drama.
Pourquoi utiliser NVM plutôt qu’une installation classique de Node.js ?
Réponse rapide : NVM est plus souple qu’une installation classique avec apt, parce qu’il gère plusieurs versions de Node.js par utilisateur, sans imposer un seul binaire système. Résultat : moins de conflits, moins de permissions à bricoler, et un changement de version bien plus propre pour le développement.
Le point clé, ce n’est pas la hype du “version manager”. C’est le gain d’usage. Avec une installation classique, vous héritez souvent d’une version unique, parfois vieille, parfois incompatible avec un projet récent. Avec NVM, vous choisissez la bonne version au bon moment. Ça change quoi ? Moins de temps perdu à courir après un bug qui n’était qu’un simple décalage de version.
| Méthode | Gestion multi-versions | Droits administrateur | Risque de conflit | Usage conseillé |
|---|---|---|---|---|
| NVM | Oui | Non pour Node.js | Faible | Développement, projets multiples |
| apt | Non | Oui | Moyen | Usage simple, version système |
| Version fixe externe | Partielle | Souvent oui | Variable | Besoin précis, cas maîtrisé |
- Vous développez plusieurs applications : NVM évite de bloquer un projet parce qu’un autre exige une version différente.
- Vous voulez Node LTS : vous l’installez rapidement, puis vous le remplacez plus tard sans réinstaller tout Ubuntu.
- Vous voulez éviter sudo avec npm : NVM réduit fortement les problèmes de permissions qui finissent toujours en mauvaise surprise.
Comment préparer Ubuntu 22.04 avant l’installation ?
Réponse rapide : Avant d’installer NVM sur Ubuntu 22.04, vérifiez votre version d’Ubuntu, votre shell et la présence de curl ou wget. Vous n’avez pas besoin de compétences avancées, mais vous devez savoir si vous êtes sous bash ou zsh, parce que le fichier de profil n’est pas le même.

Le piège habituel, c’est d’exécuter la bonne commande dans le mauvais shell, puis de conclure que NVM est “cassé”. Non. Il est juste chargé dans un autre fichier de profil. Sur Ubuntu 22.04, la plupart des environnements utilisent bash, mais certains postes sont passés sur zsh. Vérifiez avant d’aller plus loin.
Vérifier votre version d’Ubuntu et votre shell
lsb_release -a
echo $SHELL
Installer les outils utiles si besoin
sudo apt update
sudo apt install -y curl ca-certificates
Si curl est déjà installé, vous n’avez rien à faire. Si vous préférez wget, il peut aussi servir, mais curl reste le chemin le plus direct pour installer NVM sur Ubuntu 22.04.
bash: profil principal dans~/.bashrczsh: profil principal dans~/.zshrc- Internet actif : nécessaire pour récupérer le script officiel et les versions Node
Installer NVM sur Ubuntu 22.04 : quelle commande lancer ?
Réponse rapide : La méthode la plus simple consiste à exécuter le script officiel de NVM dans votre session utilisateur, sans sudo. Ensuite, vous rechargez le shell pour rendre la commande disponible immédiatement. Cette étape est courte, mais c’est elle qui conditionne tout le reste.

Le script officiel clone la configuration de NVM dans votre répertoire personnel et ajoute les lignes nécessaires au démarrage du shell. Si vous lancez ça avec des droits système, vous perdez l’intérêt principal de NVM : l’isolation par utilisateur. Gardez la main propre, gardez l’espace personnel propre.
Commande d’installation officielle
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
Si la version du script évolue, adaptez le tag à la documentation officielle du projet. Le mécanisme reste le même : vous récupérez le script, vous l’exécutez, puis vous rechargez le profil du shell.
Recharger le profil du shell
source ~/.bashrc
Si vous êtes sous zsh, remplacez simplement le fichier par celui du shell concerné :
source ~/.zshrc
Vérifier que NVM répond
nvm --version
Si la commande renvoie un numéro de version, l’installation est bonne. Si elle ne répond pas, le problème vient presque toujours du fichier de profil chargé ou du fait que le terminal n’a pas été redémarré.
- Lancez le script officiel.
- Rechargez le bon profil de shell.
- Vérifiez
nvm --version.
Comment installer Node.js avec NVM ?
Réponse rapide : Une fois NVM actif, installer Node.js prend quelques secondes. La voie la plus saine pour commencer reste la version LTS, parce qu’elle combine stabilité, compatibilité et support plus long. Vous pouvez aussi installer une version précise si un projet l’exige vraiment.

Pour la majorité des projets, la logique est simple : choisissez LTS pour produire, current pour tester, et une version précise si le projet est verrouillé sur un framework ou une dépendance ancienne. Installer Node.js avec NVM, ce n’est pas empiler des versions au hasard ; c’est les ranger intelligemment.
| Choix | Commande | Quand l’utiliser |
|---|---|---|
| LTS | nvm install --lts |
Projets stables, usage quotidien, production |
| Dernière version | nvm install node |
Tests, découverte des nouveautés |
| Version précise | nvm install 20.18.1 |
Compatibilité stricte avec un projet |
Installer Node LTS recommandé
nvm install --lts
nvm use --lts
Installer une version spécifique si besoin
nvm install 20.18.1
nvm use 20.18.1
Vérifier Node.js et npm
node -v
npm -v
Si node -v et npm -v répondent correctement, vous êtes prêt. À partir de là, évitez de mélanger NVM avec des installations globales faites à la main. Dans un setup NVM, npm vit dans la version de Node active, point.
nvm install --lts: le choix par défaut pour éviter les écarts de compatibilité.nvm install node: utile pour tester les dernières fonctionnalités.nvm install 20.18.1: idéal pour reproduire un environnement exact.
Comment choisir la version de Node.js par défaut ?
Réponse rapide : Une fois la bonne version installée, vous pouvez la définir comme version par défaut pour qu’elle se charge à chaque nouveau terminal. C’est pratique, parce que vous évitez de retaper nvm use à chaque session quand votre projet principal tourne toujours sur la même branche Node.

Le bon réflexe consiste à choisir une version installée, puis à la déclarer comme alias défaut. NVM ne devine pas vos besoins ; il applique ce que vous lui demandez. Et c’est très bien comme ça. Vous gardez le contrôle, surtout si vous jonglez entre un projet legacy et une API récente.
Définir une version par défaut
nvm alias default lts/*
nvm alias default 20.18.1
Vérifier la version active
nvm current
node -v
Si vous ouvrez un nouveau terminal et que la bonne version apparaît tout de suite, c’est gagné. Si ce n’est pas le cas, le souci vient rarement de NVM lui-même : il vient souvent du profil de shell qui n’est pas chargé au démarrage.
Comment gérer plusieurs versions de Node.js pour différents projets ?
Réponse rapide : NVM devient vraiment utile quand chaque projet peut exiger sa propre version de Node.js. Vous listez les versions installées, vous en ajoutez une si besoin, puis vous laissez un fichier .nvmrc guider la version à utiliser dans le dossier du projet. C’est simple, lisible et reproductible.

Dans la vraie vie, c’est ce qui évite les “ça marche chez moi” et les “chez toi, quelle version tu as ?”. Avec NVM, vous pouvez garder Node 18 pour un vieux front, Node 20 pour une API active, et revenir à la bonne version en une commande. C’est propre, ça se script facilement, et ça colle au quotidien d’un setup de dev.
Lister les versions installées et disponibles
nvm ls
nvm ls-remote
Changer de version rapidement
nvm use 18
nvm use 20
nvm use --lts
Créer un fichier .nvmrc dans un projet
echo "20.18.1" > .nvmrc
nvm use
Quand vous entrez dans le dossier du projet, nvm use lit .nvmrc et applique la bonne version. Si la version n’est pas installée, NVM vous le dit clairement. Là encore, pas de magie opaque : juste une règle simple et reproductible.
- Installez la version demandée par le projet.
- Créez un
.nvmrcavec le numéro exact. - Lancez
nvm usedans le dossier concerné.
Que faire si NVM ne fonctionne pas ou si vous avez déjà Node installé via apt ?
Réponse rapide : Les pannes les plus courantes viennent du profil shell non chargé, d’une version Node système qui prend le dessus, ou de permissions mal gérées. Avant de changer quoi que ce soit, vérifiez d’abord quel node est réellement utilisé. Cette vérification évite de chercher au mauvais endroit.
Le plus souvent, le conflit n’est pas grave. Il faut juste remettre l’ordre : enlever la vieille version du chemin si elle parasite la session, charger le bon profil, puis relancer le shell. Si vous avez installé Node avec apt avant, vous pouvez garder le système, mais il faut comprendre quelle commande passe en premier dans le PATH.
nvm n’est pas reconnu
source ~/.bashrc
# ou
source ~/.zshrc
command -v nvm
node ou npm n’existe pas
nvm install --lts
nvm use --lts
hash -r
Problèmes de permissions avec npm
npm config get prefix
# ne pas utiliser sudo avec npm dans un contexte NVM
Node installé via apt qui perturbe la session
which node
which npm
Si which node pointe vers /usr/bin/node alors que vous attendiez NVM, vous avez un conflit de priorité. Dans ce cas, la session charge probablement le Node système avant celui de NVM. Ce n’est pas rare, surtout après une vieille installation ou un copier-coller de tutos un peu trop rapides.
Faut-il installer Node.js avec NVM ou avec apt ?
Réponse rapide : Pour du développement, NVM est presque toujours le meilleur choix. Pour une machine qui sert uniquement de poste simple avec une seule version de Node, apt peut suffire. Mais dès qu’il y a plusieurs projets, plusieurs versions, ou un besoin de compatibilité, NVM prend l’avantage sans discussion.
Le vrai critère, ce n’est pas le confort théorique. C’est le rapport gain/prix. Avec NVM, vous gagnez la gestion multi-versions, la séparation par utilisateur et l’absence de bricolage sudo. Avec apt, vous gagnez surtout une intégration système plus directe, mais vous perdez en souplesse. Si vous codez, NVM est généralement le bon pari.
- NVM : meilleur pour les développeurs, les projets multiples et les versions différentes.
- apt : acceptable pour un usage simple, quand une seule version suffit.
- NodeSource ou autre source système : utile dans certains cas précis, mais moins souple qu’un gestionnaire de versions.
FAQ
Peut-on installer plusieurs versions de Node.js en même temps ?
Oui. C’est même le cœur de NVM. Vous pouvez garder plusieurs versions installées et basculer entre elles avec nvm use. Chaque projet peut donc fonctionner avec la version qui lui convient, sans que le reste du système soit modifié.

Faut-il utiliser sudo avec npm quand on passe par NVM ?
Non. Si vous utilisez NVM correctement, npm travaille dans votre espace utilisateur. Ajouter sudo casse souvent la logique de permissions et crée des fichiers appartenant à root. C’est le genre de raccourci qui finit en dépannage inutile.
Comment mettre NVM à jour ?
Le plus courant consiste à récupérer la dernière version du dépôt NVM si l’installation a été faite via git. En pratique, vérifiez toujours la méthode recommandée par la version actuelle de la documentation, car les commandes peuvent évoluer. Le point important reste le même : NVM se met à jour côté utilisateur, pas via apt.
Comment désinstaller proprement NVM et Node.js ?
Supprimez d’abord le répertoire ~/.nvm, puis retirez les lignes d’initialisation ajoutées dans ~/.bashrc ou ~/.zshrc. Ensuite, rouvrez le terminal. Si un Node système a été installé à part, il faudra le gérer séparément selon la méthode utilisée au départ.
Que faire si le bon Node ne se charge pas au démarrage ?
Vérifiez que le bon profil de shell est bien chargé dans la session, puis relancez le terminal. Contrôlez aussi la sortie de which node et nvm current. Dans la majorité des cas, le problème vient d’un fichier de profil non exécuté, pas de NVM lui-même.