Recientemente instalé Ubuntu 21.04 y quería instalar nvm:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash
Luego cerró y volvió a abrir la terminal. Al solicitar una instalación de la versión 12.16.3 (también he probado con otras versiones). Recibo el siguiente error:
nvm install 12.16.3 Downloading and installing node v12.16.3... Downloading https://nodejs.org/dist/v12.16.3/node-v12.16.3-linux-x64.tar.xz... Warning: Failed to create the file Warning: /home/sauronnikko/.nvm/.cache/bin/node-v12.16.3-linux-x64/node-v12.16. Warning: 3-linux-x64.tar.xz: Permission denied curl: (23) Failure writing output to destination Binary download from https://nodejs.org/dist/v12.16.3/node-v12.16.3-linux-x64.tar.xz failed, trying source. grep: /home/sauronnikko/.nvm/.cache/bin/node-v12.16.3-linux-x64/node-v12.16.3-linux-x64.tar.xz: No such file or directory Provided file to checksum does not exist. Binary download failed, trying source. Downloading https://nodejs.org/dist/v12.16.3/node-v12.16.3.tar.xz... Warning: Failed to create the file Warning: /home/sauronnikko/.nvm/.cache/src/node-v12.16.3/node-v12.16.3.tar.xz: Warning: Permission denied curl: (23) Failure writing output to destination Binary download from https://nodejs.org/dist/v12.16.3/node-v12.16.3.tar.xz failed, trying source. grep: /home/sauronnikko/.nvm/.cache/src/node-v12.16.3/node-v12.16.3.tar.xz: No such file or directory Provided file to checksum does not exist.verifique su variable de entorno NVM_DIR, la mía se configuró incorrectamente después de transferirse desde una máquina más antigua
esto funcionó
En palabras simples hice esto y funcionó...
>snap list >sudo snap remove curlEsto eliminará curl que se instaló a través de snap. Necesitamos instalar usando apt
>sudo apt-get install curlAhora necesitamos instalar nvm usando curl
>curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bashAhora simplemente instale la versión de nodo que desee.
>nvm install v14.17.0Para enumerar todas las versiones de nvm, simplemente hágalo.
>nvm lsY para cambiar simplemente escriba el siguiente comando.
>nvm use v12.X.XXDice Permission denied , intente el mismo comando con sudo
sudo curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash
También tuve exactamente el mismo problema hoy, no estoy seguro de si ha sido un problema con NVM o si solo mi instalación de Linux es complicada, pero he logrado solucionarlo por el momento descargando manualmente el archivo tar para la versión del nodo que desea instalar, muévala al caché de nvm y luego vuelva a ejecutar nvm install. Dejaré los pasos exactos a continuación e intentaré recordar regresar y actualizar esta Q si averiguo por qué curl no quiere crear un archivo en el directorio .nvm
Intenté todo lo que se me ocurrió para intentar permitir que curl se guarde en el directorio nvm, instalar nvm usando sudo, cortar el directorio, agregar permisos rwx completos para el grupo de usuarios y otros para el directorio, instalar manualmente nvm, nada funcionó para mí así que en la actualidad mi mejor solución está a continuación :)
Solución alternativa (usando v16.1.0 del nodo como ejemplo):
1: ejecute el comando curl para descargar la versión del nodo que desea en su directorio de inicio
curl https://nodejs.org/dist/v16.1.0/node-v16.1.0-linux-x64.tar.xz --output node-v16.1.0-linux-x64.tar.xz2 - copie el archivo en el caché nvm
sudo mv node-v16.1.0-linux-x64.tar.xz ~/.nvm/.cache/bin/node-v16.1.0-linux-x64/node-v16.1.0-linux-x64.tar.xz3 - ejecute nvm install nuevamente
nvm install node (or whatever version you are trying to install)Tuve el mismo problema. Fue debido a la falta de "libssl-dev". Ejecute el siguiente comando antes de iniciar el proceso de instalación de nvm
sudo apt-get install build-essential libssl-dev curl git-core
Tuve el mismo problema (habiendo instalado previamente curl con snap ). Después de desinstalar curl nvm funcionó como se esperaba.
$ sudo snap remove curldesinstalar curl instalado con snap
sudo snap remove curl instalar curl desde apt
sudo apt install curl