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.
Actualizado Publicado 6 min de lectura

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
sudopara 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:
xcode-select --installDespués instala NVM con el script oficial de instalación:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.5/install.sh | bashEsto 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:
source ~/.zshrcComprueba que funciona:
nvm --versionDeberí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:
sudo apt update && sudo apt install curl -yDespués ejecuta el script oficial de instalación:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.5/install.sh | bashEl script clona NVM en ~/.nvm y añade las líneas de source a ~/.bashrc. Recarga tu shell:
source ~/.bashrcCompruébalo:
nvm --versionEso 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):
nvm install --ltsCompruébalo:
node --version
# v24.x.x
npm --versionInstalar una versión específica
nvm install 22Esto instala la última versión v22.x (nombre en clave Jod, también LTS).
Cambiar entre versiones
nvm use 24
nvm use 22Comprueba qué tienes instalado:
nvm lsEstablecer 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:
nvm alias default 24Usar un archivo .nvmrc (versión de Node por proyecto)
Crea un archivo .nvmrc en la raíz de tu proyecto:
echo "22" > .nvmrcLuego, al hacer cd en ese directorio del proyecto:
nvm use
# Found .nvmrc with version <22>
# Now using node v22.22.1Si 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:
source ~/.nvm/nvm.shLos 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.


