在 Ubuntu 上安装 NVM (Node Version Manager) 的步骤

NVM (Node Version Manager) 是一个用于管理多个 Node.js 版本的工具,它允许您在同一台设备上安装、切换和管理不同版本的 Node.js。以下是在 Ubuntu 上安装 NVM 的详细步骤:

安装前准备

可先在windows上安装ubuntu

参考链接:https://blog.csdn.net/qq_41472205/article/details/147704718

如果您已经安装了 Node.js,建议先卸载它以避免与 NVM 产生冲突 1:

bash 复制代码
sudo apt remove nodejs
sudo apt purge nodejs
sudo apt autoremove

安装 NVM

  1. 首先,确保您的系统已安装必要的构建工具(对于从源代码编译 Node.js 可能需要)2:
bash 复制代码
sudo apt update
sudo apt install build-essential libssl-dev
  1. 使用 curl 下载并运行 NVM 安装脚本 2:
bash 复制代码
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash

或者使用 wget:

bash 复制代码
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
  1. 安装脚本会将 NVM 存储库克隆到 ~/.nvm 目录,并添加必要的配置到您的配置文件(~/.bash_profile~/.zshrc~/.profile~/.bashrc)5。

  2. 要使这些更改生效,您可以关闭并重新打开终端,或者运行以下命令 2:

bash 复制代码
source ~/.bashrc  # 如果您使用的是 bash
# 或
source ~/.zshrc   # 如果您使用的是 zsh

验证安装

安装完成后,验证 NVM 是否正确安装 4:

bash 复制代码
command -v nvm

或者检查 NVM 版本:

bash 复制代码
nvm --version

如果安装成功,上述命令将显示 NVM 的版本号。

使用 NVM 安装 Node.js

  1. 查看可用的 Node.js 版本:
bash 复制代码
nvm ls-remote
  1. 安装特定版本的 Node.js:
bash 复制代码
nvm install 16.20.0  # 安装指定版本
  1. 安装最新的 LTS(长期支持)版本 2:
bash 复制代码
nvm install --lts

管理 Node.js 版本

  1. 列出已安装的 Node.js 版本:
bash 复制代码
nvm ls
  1. 切换到特定版本的 Node.js:
bash 复制代码
nvm use 16.20.0
  1. 设置默认的 Node.js 版本 1:
bash 复制代码
nvm alias default 16.20.0
  1. 验证当前使用的 Node.js 版本:
bash 复制代码
node -v

优势

NVM 的主要优势是它允许您 3 1:

  • 在同一台设备上安装和管理多个 Node.js 版本
  • 轻松切换不同项目所需的 Node.js 版本
  • 测试应用程序在不同 Node.js 版本上的兼容性
  • 无需 sudo 权限即可安装全局 npm 包(因为 NVM 将所有内容安装在用户目录中)

通过这些步骤,您应该能够成功安装 NVM 并使用它来管理您的 Node.js 环境。

相关推荐
chlk12314 小时前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑14 小时前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件15 小时前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
碳基沙盒15 小时前
OpenClaw 多 Agent 配置实战指南
运维
深紫色的三北六号1 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash1 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI2 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行2 天前
Linux和window共享文件夹
linux
木心月转码ing3 天前
WSL+Cpp开发环境配置
linux
蝎子莱莱爱打怪4 天前
Centos7中一键安装K8s集群以及Rancher安装记录
运维·后端·kubernetes