Logotipo de Bitdoze

Cómo instalar Node.js con NVM en macOS y Ubuntu

Guía paso a paso para instalar Node.js con NVM en macOS y Ubuntu, incluidos los Mac con Apple Silicon y cómo cambiar entre varias versiones de Node.

Dragos

Actualizado Publicado 6 min de lectura

Cómo instalar Node.js con NVM en macOS y Ubuntu

NVM (Node Version Manager) es la forma recomendada de instalar Node.js en macOS y Linux. Te permite instalar varias versiones de Node.js y cambiar entre ellas sin sudo. Esta guía cubre la instalación tanto en macOS como en Ubuntu, además de cómo gestionar múltiples versiones de Node.

Por qué NVM en lugar de una instalación directa

Instalar Node.js directamente desde el instalador oficial o el gestor de paquetes de tu SO funciona, pero tiene inconvenientes:

  • Los paquetes del sistema suelen estar desactualizados (el repositorio por defecto de Ubuntu puede ir meses por detrás).
  • Necesitas sudo para instalar paquetes globales de npm, lo que es un quebradero de cabeza de permisos.
  • Cambiar entre versiones de Node para distintos proyectos es tedioso.

NVM resuelve los tres problemas. Cada versión de Node se instala en tu directorio personal (~/.nvm/versions/node/), y cambiar entre ellas es instantáneo.

1. Instalar NVM

macOS

Asegúrate de tener instaladas primero las Xcode Command Line Tools:

bash
xcode-select --install

Después instala NVM con el script oficial de instalación:

bash
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.5/install.sh | bash

Esto clona NVM en ~/.nvm y añade las líneas necesarias a tu perfil de shell (~/.zshrc en macOS moderno, ya que zsh es la shell por defecto desde macOS 10.15).

Recarga tu shell:

bash
source ~/.zshrc

Comprueba que funciona:

bash
nvm --version

Deberías ver 0.40.5.

Nota sobre los Mac con Apple Silicon (M1/M2/M3/M4): Node.js v16+ tiene soporte nativo para arm64, así que NVM funciona sin configuración adicional. Si necesitas ejecutar versiones de Node.js anteriores a v16, tendrás que usar Rosetta — consulta la documentación de NVM para Apple Silicon.

No uses Homebrew para instalar NVM. Los mantenedores de NVM indican explícitamente que la instalación con Homebrew no está soportada. Si ya lo tienes instalado con Homebrew, desinstálalo primero con brew uninstall nvm y usa el script anterior.

Ubuntu

Instala curl si no lo tienes:

bash
sudo apt update && sudo apt install curl -y

Después ejecuta el script oficial de instalación:

bash
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.5/install.sh | bash

El script clona NVM en ~/.nvm y añade las líneas de source a ~/.bashrc. Recarga tu shell:

bash
source ~/.bashrc

Compruébalo:

bash
nvm --version

Eso es todo. Sin sudo, sin cambios a nivel de sistema.

Guía en vídeo en YouTube

2. Instalar Node.js con NVM

A partir de aquí, NVM funciona igual en macOS y en Ubuntu.

Instalar la última versión LTS

La opción --lts instala la última versión con soporte a largo plazo (Long-Term Support). A mediados de 2026, esa es Node.js 24 (nombre en clave Krypton):

bash
nvm install --lts

Compruébalo:

bash
node --version
# v24.x.x
npm --version

Instalar una versión específica

bash
nvm install 22

Esto instala la última versión v22.x (nombre en clave Jod, también LTS).

Cambiar entre versiones

bash
nvm use 24
nvm use 22

Comprueba qué tienes instalado:

bash
nvm ls

Establecer una versión por defecto

La primera versión que instalas se convierte en la versión por defecto para las nuevas shells. Para cambiarla:

bash
nvm alias default 24

Usar un archivo .nvmrc (versión de Node por proyecto)

Crea un archivo .nvmrc en la raíz de tu proyecto:

bash
echo "22" > .nvmrc

Luego, al hacer cd en ese directorio del proyecto:

bash
nvm use
# Found .nvmrc with version <22>
# Now using node v22.22.1

Si la versión no está instalada todavía, nvm install la descargará automáticamente.

Calendario actual de versiones de Node.js

Versión Nombre en clave Estado EOL
v26 — Actual (mayo 2026) —
v24 Krypton LTS activa abr 2028
v22 Jod LTS en mantenimiento abr 2027
v20 Iron EOL (abr 2026) —
v18 Hydrogen EOL (abr 2025) —
v16 Gallium EOL (sep 2023) —

Usa v24 para proyectos nuevos. Usa v22 si tu proyecto o dependencias aún no se han puesto al día. Evita v20 y anteriores.

A partir de Node.js 27 (octubre de 2026), el ciclo de versiones pasa a una versión mayor por año en lugar de dos.

Comandos útiles de NVM

Comando Qué hace
nvm install --lts Instalar la última LTS
nvm install 24 Instalar una versión mayor específica
nvm install 22.10.0 Instalar una versión exacta
nvm use 24 Cambiar a una versión
nvm ls Listar las versiones instaladas
nvm ls-remote --lts Listar todas las versiones LTS disponibles
nvm alias default 24 Establecer la versión por defecto para nuevas shells
nvm uninstall 18 Eliminar una versión
nvm current Mostrar la versión activa

Solución de problemas

nvm: command not found tras la instalación

Tu perfil de shell no se ha recargado. Prueba a cerrar y reabrir el terminal. Si no funciona, comprueba que ~/.zshrc (macOS) o ~/.bashrc (Ubuntu) contiene las líneas de NVM. También puedes ejecutar:

bash
source ~/.nvm/nvm.sh

Los paquetes globales de npm piden sudo

Si estás usando sudo npm install -g <package>, algo va mal. El Node instalado con NVM no necesita sudo para los paquetes globales. Si tienes un archivo ~/.npmrc con una opción prefix, elimínalo.

Aparece una versión antigua de Node al abrir un terminal nuevo

Ejecuta nvm alias default para ver cuál está configurada. Arréglalo con nvm alias default <version>.

which nvm no devuelve nada

Es lo esperado. NVM es una función de shell, no un binario. Usa command -v nvm en su lugar.