在 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 环境。

相关推荐
AlfredZhao1 天前
生产环境里,为什么不建议把普通端口直接暴露到公网?
linux·https·443·80
戴为沐2 天前
Linux内存扩容指南
linux
zylyehuo3 天前
Linux 彻底且安全地删除文件
linux
用户805533698033 天前
主线 U-Boot 上 RK3506:和闭源 rkbin 拔河的三个隐性契约
linux·嵌入式
用户034095297913 天前
linux fcitx 5 雾凇拼音 设置在中文输入法下仍然输入英文标点
linux
乘云数字DATABUFF3 天前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
Web3探索者5 天前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo5 天前
Linux系统中网线与USB网络共享冲突
linux
荣--5 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森5 天前
动手实战学 Docker — 从零到集群编排完全指南
运维