GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo administrar versiones de Nodejs con n en Linux

Esta guía le brinda una breve introducción a "n" , una herramienta no oficial de administración de versiones de nodos y luego explica cómo administrar fácilmente las versiones de nodejs con n en los sistemas operativos Linux.

¿Qué es n, el administrador de versiones del nodo?

NodoJS no requiere presentación. Nodejs es un entorno de tiempo de ejecución para JavaScript creado sobre el motor V8 de Google. Nodejs viene con un administrador de paquetes integrado llamado npm para instalar y administrar versiones de nodos y también existen muchas herramientas de terceros para administrar versiones de nodos. n es una de las herramientas de administración de versiones de nodos de terceros. Sí, es solo una letra - n.

El n es un administrador de versiones de nodos interactivo para administrar fácilmente una o varias versiones de NodeJS. Sin subcapas, sin configuración de perfil, sin API intrincada, sin curva de aprendizaje, es simplemente simple herramienta. Es solo un script de shell y su código está disponible gratuitamente en GitHub.

1. Instalar n en Linux

La forma más sencilla de instalar n es a través de npm . Como ya se indicó, Npm es el administrador de paquetes integrado para Nodejs y viene preinstalado con Nodejs.

Supongo que ya tiene la última versión de Nodejs en su máquina Linux. Si aún no ha instalado NodeJS, consulte la siguiente guía:

  • Cómo instalar NodeJS en Linux

A continuación, ejecute el siguiente comando para instalar n en Linux:

$ npm install -g n

Si npm no está disponible o no desea instalar n con npm, puede obtener directamente el script n de GitHub e instalarlo como se muestra a continuación:

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

Esto instalará ambos node su versión y npm .

1.2. Crear directorio de inicio para la instalación del nodo

Por defecto, n instala node en n/versions subdirectorio de /usr/local/ directorio, que se define en el N_PREFIX Variable ambiental. Como ya sabes, requerimos sudo permiso para instalar el nodo en /usr/local/n/versions/node/ directorio. Para evitar usar sudo , puede crear un directorio dedicado para la instalación de nodos en su $HOME y agregarlos a su PATH .

Para crear un directorio de inicio para la instalación del nodo, edite su archivo de perfil de usuario, por ejemplo, ~/.bashrc :

$ vi ~/.bashrc

Agregue las siguientes líneas:

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

Presiona ESC clave y escriba :wq para guardar el archivo y salir.

1.3. Instale n con el script n-install

La otra forma de instalar n es a través de n-install script, que instala n directamente desde GitHub.

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

Este comando realizará el siguiente conjunto de tareas:

  • Primero, establece tanto PREFIX y N_PREFIX a $HOME/n;
  • Y, instala n a $HOME/n/bin;
  • A continuación, modifica los archivos de inicialización de los shells admitidos para exportar N_PREFIX;
  • Luego, agrega $HOME/n/bin a la PATH;
  • Finalmente, instala la última versión de LTS Node.js.

2. Administrar versiones de nodejs con n en Linux

¡Instalar y administrar versiones de nodejs con n es bastante fácil! Veamos algunos ejemplos.

2.1. Obtener ayuda

Si es nuevo en n, probablemente sea una buena idea abrir la sección de ayuda y aprender a usar n.

Para ver la sección de ayuda de n, simplemente ejecute:

$ n --help

Consulte el manual de ayuda para obtener una idea del uso de cada comando.

 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. Instalar versiones de Nodejs usando n

Para instalar la última versión de nodejs con n , simplemente ejecute:

$ n latest

Salida de muestra:

 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"

La versión anterior del nodo se moverá a la nueva ubicación, es decir, /home/ostechnix/.n/bin/node en mi caso. Abra una nueva sesión de shell o reinicie la sesión de Terminal para usar la versión de nodo desde la nueva ubicación.

Compruebe la versión del nodo instalado:

$ node --version
v16.2.0

Comprobar la versión de npm:

$ npm -v
7.13.0

De manera similar, puede instalar una versión de nodo LTS usando n como a continuación:

$ n lts

Salida de muestra:

    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)

También puede instalar una versión específica de Nodejs, por ejemplo 16.0.0 , usando el comando:

$ n 16.0.0

Como habrá notado, n crea directorios separados para cada versión de nodo. Por ejemplo, crea /home/ostechnix/.n/n/versions/node/16.2.0 directorio para la última versión del nodo, n/versions/node/14.17.0 para la versión LTS del nodo y n/versions/node/16.0.0 para la versión de nodo 16.0.0. De esta manera evita que cada versión se mezcle entre sí y podemos cambiar a cualquier versión en cualquier momento.

2.3. Descargar versiones de Nodejs, pero no instalar

Si no desea instalar una versión de Nodejs, sino solo descargarla, use -d , --download opción:

$ n -d 15.8.0

Este comando solo descargará la versión del nodo 15.8.0, pero no la instalará.

Salida de muestra:

 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. Lista de versiones de Nodejs descargadas localmente

Para ver todas las versiones descargadas de Nodejs en su caché local, simplemente ejecute:

$ n ls

O,

$ n list

Salida de muestra:

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

2.5. Lista de versiones de Nodejs disponibles desde el repositorio remoto

Podemos usar ls-remote opción para ver las 20 versiones recientes de Nodejs desde el registro npm .

$ n ls-remote

O,

$ n lsr

Salida de muestra:

 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 versión más reciente se mostrará en la parte superior.

De forma predeterminada, enumera 20 versiones. También puede mostrar una cierta cantidad de versiones de nodos.

$ n lsr 10

Para listar todas las versiones de nodejs disponibles, use --all opción.

$ n ls-remote --all

2.6. Muestra la ruta de la versión descargada de Nodejs

Para imprimir la ruta completa de una versión de nodo descargada específica, ejecute:

$ n which node/16.2.0

Salida de muestra:

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

2.7. Cambiar versiones de Nodejs

La última versión instalada será la versión de nodo predeterminada. Si desea cambiar a una versión diferente, escriba n y elija una versión de la lista de versiones de nodos descargados.

$ n

Este comando mostrará todas las versiones de nodejs descargadas. Puede elegir la versión requerida usando las flechas arriba/abajo y presionar la tecla ENTER para instalarla.

    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 versión predeterminada se indica con un pequeño círculo delante de ella.

Si no desea descargar una versión específica de nodejs, simplemente selecciónela y presione d para eliminarlo. Para salir, presiona q .

2.8. Ejecutar la versión descargada de Nodejs

Como ya se indicó, la última versión instalada es la versión de nodo predeterminada. Si desea ejecutar una versión diferente sin configurarla como predeterminada, puede usar este comando:

$ n run 15.8.0

Salida de muestra:

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

Presiona Ctrl+D o escribe .exit para salir del indicador de nodo.

2.9. Quitar las versiones de Nodejs descargadas

Enumere cuántas versiones de nodos se descargan con el comando:

$ n ls

Para eliminar una versión específica, simplemente mencione su número de versión como se muestra a continuación:

$ n rm node/16.0.0

Alternativamente, escriba n para ver las versiones de nodos disponibles:

$ n

Seleccione la versión que desea eliminar usando las flechas arriba/abajo y presione d para eliminarlo. Debe tener cuidado al eliminar una versión de nodo. Porque no se le pedirá que confirme la eliminación. Una vez que presionas la d clave, la versión seleccionada desaparecerá.

Para eliminar todas las versiones descargadas excepto la versión instalada, ejecute:

$ n prune

Para eliminar por completo la versión instalada de Nodejs, ejecute:

$ n uninstall

Se le preguntará si desea eliminar tanto Node como Npm de su sistema. Escribe y y presiona ENTER clave para eliminar completamente node y npm instalado por n de su sistema.

 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

Sin embargo, esto no eliminará la versión de nodo instalada usando NVM o su administrador de paquetes de distribución. Solo eliminará las versiones de nodo que estén instaladas con n.

Conclusión

El script n será útil cuando desee utilizar una versión diferente de Nodejs para un proyecto diferente. No necesita eliminar una versión de Nodejs e instalar otra para cada proyecto. Puede instalar varias versiones de Nodejs y cambiar instantáneamente de una versión de Nodejs a otra.


Linux
  1. Cómo administrar las capacidades de archivos de Linux

  2. Cómo administrar la contraseña de la cuenta en Linux

  3. Cómo administrar versiones de NodeJS con n en Ubuntu 20.04

  4. Cómo instalar NodeJS en Linux

  5. Cómo administrar una partición de intercambio en Linux

Cómo instalar Nodejs en Rocky Linux 8.4

Cómo administrar varias versiones de Java con jEnv en Linux

Cómo asegurar servidores Linux con SE Linux

Cómo administrar de forma remota un servidor Linux con SSH

Cómo instalar NodeJS 14/16 y NPM en Rocky Linux 8

Cómo administrar el almacenamiento con GParted Linux