GNU/Linux >> Tutoriels Linux >  >> Linux

Comment gérer les versions de Nodejs avec n sous Linux

Ce guide vous donne une brève introduction à "n" , un outil de gestion de version de nœud non officiel, puis explique comment gérer facilement les versions de nodejs avec n dans les systèmes d'exploitation Linux.

Qu'est-ce que n, le gestionnaire de versions de nœud ?

NodeJS ne nécessite aucune introduction. Nodejs est un environnement d'exécution pour JavaScript construit sur le moteur V8 de Google. Nodejs est livré avec un gestionnaire de packages intégré appelé npm pour installer et gérer les versions de nœud et il existe également de nombreux outils tiers pour gérer les versions de nœud. n est l'un des outils de gestion de version de nœud tiers. Oui, c'est juste une seule lettre - n.

Le n est un gestionnaire de version de nœud interactif pour gérer facilement une ou plusieurs versions de NodeJS ! Pas de sous-shells, pas de configuration de profil, pas d'API compliquée, pas de courbe d'apprentissage, c'est juste simple outil. Ce n'est qu'un script shell et son code est disponible gratuitement sur GitHub.

1. Installer n sous Linux

Le moyen le plus simple d'installer n consiste à utiliser npm . Comme indiqué précédemment, Npm est le gestionnaire de packages intégré pour Nodejs et est préinstallé avec Nodejs.

Je suppose que vous avez déjà les derniers Nodejs sur votre machine Linux. Si vous n'avez pas encore installé NodeJS, consultez le guide suivant :

  • Comment installer NodeJS sur Linux

Ensuite, exécutez la commande suivante pour installer n sous Linux :

$ npm install -g n

Si npm n'est pas disponible ou si vous ne souhaitez pas installer n avec npm, vous pouvez directement récupérer le script n depuis GitHub et l'installer comme ci-dessous :

$ curl -L https://raw.githubusercontent.com/tj/n/master/bin/n -o n
$ bash n lts

Cela installera les deux node sa version et npm .

1.2. Créer un répertoire personnel pour l'installation du nœud

Par défaut, n installe node sous n/versions sous-répertoire de /usr/local/ répertoire, qui est défini dans le N_PREFIX variables d'environnement. Comme vous le savez déjà, nous avons besoin de sudo autorisation d'installer le nœud sous /usr/local/n/versions/node/ annuaire. Pour éviter d'utiliser sudo , vous pouvez créer un répertoire dédié pour l'installation des nœuds dans votre $HOME et les ajouter à votre PATH .

Pour créer un répertoire personnel pour l'installation du nœud, modifiez votre fichier de profil utilisateur, par exemple ~/.bashrc :

$ vi ~/.bashrc

Ajoutez les lignes suivantes :

export N_PREFIX=$HOME/.n
export PATH=$N_PREFIX/bin:$PATH

Appuyez sur ESC clé et tapez :wq pour enregistrer le fichier et quitter.

1.3. Installer n avec le script n-install

L'autre façon d'installer n consiste à utiliser n-install script, qui installe n directement depuis le GitHub.

$ curl -L https://git.io/n-install | bash

Cette commande effectuera l'ensemble de tâches suivant :

  • Tout d'abord, il définit à la fois PREFIX et N_PREFIX vers $HOME/n;
  • Et, installe n vers $HOME/n/bin;
  • Ensuite, modifie les fichiers d'initialisation des shells pris en charge pour exporter N_PREFIX;
  • Ensuite, ajoute $HOME/n/bin au PATH;
  • Enfin, installe la dernière version de LTS Node.js.

2. Gérer les versions de nodejs avec n sous Linux

Installer et gérer les versions de nodejs avec n est assez simple ! Voyons quelques exemples.

2.1. Obtenir de l'aide

Si vous débutez avec n, c'est probablement une bonne idée d'afficher la section d'aide et d'apprendre à utiliser n.

Pour afficher la section d'aide de n, exécutez simplement :

$ n --help

Parcourez le manuel d'aide pour avoir un aperçu de l'utilisation de chaque commande.

 Usage: n [options] [COMMAND] [args]
 Commands:
 n                              Display downloaded Node.js versions and install selection
   n latest                       Install the latest Node.js release (downloading if necessary)
   n lts                          Install the latest LTS Node.js release (downloading if necessary)
   n                     Install Node.js  (downloading if necessary)
   n install             Install Node.js  (downloading if necessary)
   n run  [args …]     Execute downloaded Node.js  with [args …]
   n run  [args …]     Execute downloaded node  with [args …]
   n which               Output path for downloaded node 
   n exec   [args…]  Execute command with modified PATH, so downloaded node  and npm first
   n rm              Remove the given downloaded version(s)
   n prune                        Remove all downloaded versions except the installed version
   n --latest                     Output the latest Node.js version available
   n --lts                        Output the latest LTS Node.js version available
   n ls                           Output downloaded versions
   n ls-remote [version]          Output matching versions available for download
   n uninstall                    Remove the installed Node.js
 Options:
 -V, --version         Output version of n
   -h, --help            Display help information
   -p, --preserve        Preserve npm and npx during install of Node.js
   -q, --quiet           Disable curl output (if available)
   -d, --download        Download only
   -a, --arch            Override system architecture
   --all                 ls-remote displays all matches instead of last 20
   --insecure            Turn off certificate checking for https requests (may be needed from behind a proxy server)
   --use-xz/--no-use-xz  Override automatic detection of xz support and enable/disable use of xz compressed node downloads.
 Aliases:
 install: i
   latest: current
   ls: list
   lsr: ls-remote
   lts: stable
   rm: -
   run: use, as
   which: bin
 Versions:
 Numeric version numbers can be complete or incomplete, with an optional leading 'v'.
   Versions can also be specified by label, or codename,
   and other downloadable releases by /
 4.9.1, 8, v6.1    Numeric versions lts               Newest Long Term Support official release latest, current   Newest official release auto              Read version from file: .n-node-version, .node-version, .nvmrc, or package.json engine            Read version from package.json boron, carbon     Codenames for release streams lts_latest        Node.js support aliases and nightly, rc/10 et al

2.2. Installer les versions de Nodejs en utilisant n

Pour installer la dernière version de nodejs avec n , lancez simplement :

$ n latest

Exemple de résultat :

 installing : node-v16.2.0
        mkdir : /home/ostechnix/.n/n/versions/node/16.2.0
        fetch : https://nodejs.org/dist/v16.2.0/node-v16.2.0-linux-x64.tar.xz
    installed : v16.2.0 (with npm 7.13.0)
 Note: the node command changed location and the old location may be remembered in your current shell.
          old : /home/ostechnix/.nvm/versions/node/v16.1.0/bin/node
          new : /home/ostechnix/.n/bin/node
 To reset the command location hash either start a new shell, or execute PATH="$PATH"

L'ancienne version du nœud sera déplacée vers le nouvel emplacement, c'est-à-dire /home/ostechnix/.n/bin/node dans mon cas. Ouvrez une nouvelle session shell ou redémarrez la session Terminal pour utiliser la version du nœud à partir du nouvel emplacement.

Vérifiez la version du nœud installé :

$ node --version
v16.2.0

Vérifier la version npm :

$ npm -v
7.13.0

De même, vous pouvez installer une version de nœud LTS en utilisant n comme ci-dessous :

$ n lts

Exemple de résultat :

    installing : node-v14.17.0
        mkdir : /home/ostechnix/.n/n/versions/node/14.17.0
        fetch : https://nodejs.org/dist/v14.17.0/node-v14.17.0-linux-x64.tar.xz
    installed : v14.17.0 (with npm 6.14.13)

Vous pouvez également installer une version spécifique de Nodejs, par exemple 16.0.0 , en utilisant la commande :

$ n 16.0.0

Comme vous l'avez peut-être remarqué, n crée des répertoires séparés pour chaque version de nœud. Par exemple, il crée /home/ostechnix/.n/n/versions/node/16.2.0 répertoire pour la dernière version du nœud, n/versions/node/14.17.0 pour la version LTS du nœud et n/versions/node/16.0.0 pour la version de nœud 16.0.0. De cette façon, chaque version n'est pas mélangée les unes aux autres, et nous pouvons passer à n'importe quelle version à tout moment.

2.3. Téléchargez les versions de Nodejs, mais ne les installez pas

Si vous ne voulez pas installer une version de Nodejs, mais seulement la télécharger, utilisez -d , --download choix :

$ n -d 15.8.0

Cette commande téléchargera uniquement la version 15.8.0 du nœud, mais ne l'installera pas.

Exemple de résultat :

 installing : node-v15.8.0
        mkdir : /home/ostechnix/.n/n/versions/node/15.8.0
        fetch : https://nodejs.org/dist/v15.8.0/node-v15.8.0-linux-x64.tar.xz

2.4. Lister les versions de Nodejs téléchargées localement

Pour afficher toutes les versions téléchargées de Nodejs dans votre cache local, exécutez simplement :

$ n ls

Ou,

$ n list

Exemple de résultat :

 node/14.17.0
 node/15.8.0
 node/16.0.0
 node/16.2.0

2.5. Répertorier les versions Nodejs disponibles à partir du référentiel distant

Nous pouvons utiliser ls-remote option pour afficher les 20 dernières versions de Nodejs à partir du registre npm .

$ n ls-remote

Ou,

$ n lsr

Exemple de résultat :

 Listing remote… Displaying 20 matches (use --all to see all).
 16.2.0
 16.1.0
 16.0.0
 15.14.0
 15.13.0
 15.12.0
 15.11.0
 15.10.0
 15.9.0
 15.8.0
 15.7.0
 15.6.0
 15.5.1
 15.5.0
 15.4.0
 15.3.0
 15.2.1
 15.2.0
 15.1.0
 15.0.1

La version la plus récente sera affichée en haut.

Par défaut, il répertorie 20 versions. Vous pouvez également afficher un certain nombre de versions de nœuds.

$ n lsr 10

Pour lister toutes les versions de nodejs disponibles, utilisez --all option.

$ n ls-remote --all

2.6. Afficher le chemin de la version Nodejs téléchargée

Pour imprimer le chemin complet d'une version de nœud téléchargée spécifique, exécutez :

$ n which node/16.2.0

Exemple de résultat :

/home/ostechnix/.n/n/versions/node/16.2.0/bin/node

2.7. Changer de version de Nodejs

La dernière version installée sera la version de nœud par défaut. Si vous souhaitez passer à une version différente, tapez n et choisissez une version dans la liste des versions de nœud téléchargées.

$ n

Cette commande affichera toutes les versions téléchargées de nodejs. Vous pouvez choisir la version requise à l'aide des flèches haut/bas et appuyer sur la touche ENTRÉE pour l'installer.

    node/14.17.0
    node/15.8.0
  ο node/16.0.0
    node/16.2.0

 Use up/down arrow keys to select a version, return key to install, d to delete, q to quit

La version par défaut est indiquée par un petit cercle devant.

Si vous ne voulez pas de version téléchargée spécifique de nodejs, choisissez-la simplement et appuyez sur d pour le supprimer. Pour quitter, appuyez sur q .

2.8. Exécuter la version téléchargée de Nodejs

Comme indiqué précédemment, la dernière version installée est la version de nœud par défaut. Si vous souhaitez exécuter une version différente sans la définir par défaut, vous pouvez utiliser cette commande :

$ n run 15.8.0

Exemple de résultat :

Welcome to Node.js v15.8.0.
 Type ".help" for more information.
  >  

Appuyez sur Ctrl+D ou tapez .exit pour quitter l'invite du nœud.

2.9. Supprimer les versions téléchargées de Nodejs

Répertoriez le nombre de versions de nœuds téléchargées avec la commande :

$ n ls

Pour supprimer une version spécifique, il suffit de mentionner son numéro de version comme ci-dessous :

$ n rm node/16.0.0

Sinon, tapez n pour afficher les versions de nœud disponibles :

$ n

Sélectionnez la version que vous souhaitez supprimer à l'aide des flèches haut/bas et appuyez sur d pour le supprimer. Vous devez être prudent lors de la suppression d'une version de nœud. Parce que vous ne serez pas invité à confirmer la suppression. Une fois que vous avez appuyé sur le d clé la version sélectionnée disparaîtra.

Pour supprimer toutes les versions téléchargées à l'exception de la version installée, exécutez :

$ n prune

Pour supprimer complètement la version Nodejs installée, exécutez :

$ n uninstall

Il vous sera demandé si vous souhaitez supprimer à la fois Node et Npm de votre système. Tapez y et appuyez sur ENTER clé pour supprimer complètement node et npm installé par n de votre système.

 Do you wish to delete node and npm from /home/ostechnix/.n? y
 Uninstalling node and npm
 /home/ostechnix/.n/bin/node
 /home/ostechnix/.n/bin/npm
 /home/ostechnix/.n/bin/npx
 /home/ostechnix/.n/include/node
 /home/ostechnix/.n/lib/node_modules/npm
 /home/ostechnix/.n/share/doc/node
 /home/ostechnix/.n/share/man/man1/node.1
 /home/ostechnix/.n/share/systemtap/tapset/node.stp

Cependant, cela ne supprimera pas la version de nœud installée à l'aide de NVM ou de votre gestionnaire de packages de distributions. Il ne supprimera que les versions de nœud installées avec n.

Conclusion

Le script n sera utile lorsque vous souhaitez utiliser différentes versions de Nodejs pour différents projets. Vous n'avez pas besoin de supprimer une version de Nodejs et d'en installer une autre pour chaque projet. Vous pouvez installer plusieurs versions de Nodejs et passer instantanément d'une version de Nodejs à une autre.


Linux
  1. Comment gérer les capacités des fichiers Linux

  2. Comment gérer le mot de passe du compte sous Linux

  3. Comment gérer les versions de NodeJS avec n dans Ubuntu 20.04

  4. Comment gérer plusieurs versions de Python avec Pyenv sous Linux

  5. Comment gérer une partition d'échange sous Linux

Comment installer Nodejs sur Rocky Linux 8.4

Comment gérer plusieurs versions de Java avec jEnv sous Linux

Comment sécuriser les serveurs Linux avec SE Linux

Comment gérer à distance un serveur Linux avec SSH

Comment installer NodeJS 14/16 et NPM sur Rocky Linux 8

Comment gérer le stockage avec GParted Linux