Linux环境下Node.js任意版本安装与pnpm、yarn包管理

一、Node.js版本管理器NVM安装与使用

1.1 NVM简介

NVM(Node Version Manager)是一个Node.js版本管理工具,允许在同一台机器上轻松切换不同版本的Node.js。它是Linux环境下管理Node.js版本的最佳选择。

1.2 安装NVM

使用以下命令安装NVM:

bash 复制代码
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash

或者使用wget:

bash 复制代码
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash

安装完成后,重新加载shell配置:

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

验证NVM安装:

bash 复制代码
command -v nvm

1.3 NVM常用命令

安装Node.js版本
bash 复制代码
# 安装最新的LTS版本
nvm install --lts

# 安装指定版本
nvm install 20.17.0

# 安装最新版本
nvm install node
切换Node.js版本
bash 复制代码
# 切换到指定版本
nvm use 20.17.0

# 切换到最新的LTS版本
nvm use --lts
查看已安装版本
bash 复制代码
# 列出已安装的版本
nvm ls

# 列出所有可安装的远程版本
nvm ls-remote
设置默认版本
bash 复制代码
# 设置默认版本
nvm alias default 20.17.0
卸载Node.js版本
bash 复制代码
nvm uninstall 20.17.0

二、pnpm安装与配置

2.1 pnpm简介

pnpm是一个快速、节省磁盘空间的包管理器,相比npm具有更好的性能和更严格的依赖管理。

2.2 安装pnpm

方法一:使用独立脚本(推荐)
bash 复制代码
curl -fsSL https://get.pnpm.io/install.sh | sh -

或者使用wget:

bash 复制代码
wget -qO- https://get.pnpm.io/install.sh | sh -
方法二:使用Corepack(Node.js >= 16.13)
bash 复制代码
# 启用Corepack
corepack enable

# 安装最新版pnpm
corepack prepare pnpm@latest --activate
方法三:使用npm安装
bash 复制代码
npm install -g pnpm

2.3 安装特定版本的pnpm

bash 复制代码
curl -fsSL https://get.pnpm.io/install.sh | env PNPM_VERSION=9.0.0 sh -

2.4 验证pnpm安装

bash 复制代码
pnpm --version

三、yarn安装与配置

3.1 yarn简介

Yarn是Facebook开发的包管理器,专注于速度、安全性和一致性。

3.2 安装yarn

方法一:使用Corepack(推荐)
bash 复制代码
# 启用Corepack
corepack enable

# 安装最新版yarn
corepack prepare yarn@stable --activate
方法二:使用npm安装
bash 复制代码
npm install -g yarn
方法三:使用官方脚本
bash 复制代码
curl -o- -L https://yarnpkg.com/install.sh | bash

3.3 验证yarn安装

bash 复制代码
yarn --version

四、包管理器常用命令对比

4.1 项目初始化

操作 npm yarn pnpm
初始化项目 npm init yarn init pnpm init

4.2 依赖安装

操作 npm yarn pnpm
安装所有依赖 npm install yarn install pnpm install
安装特定包 npm install <package> yarn add <package> pnpm add <package>
安装开发依赖 npm install <package> --save-dev yarn add <package> --dev pnpm add <package> --save-dev
全局安装 npm install <package> -g yarn global add <package> pnpm add <package> -g

4.3 依赖管理

操作 npm yarn pnpm
卸载包 npm uninstall <package> yarn remove <package> pnpm uninstall <package>
更新包 npm update <package> yarn upgrade <package> pnpm update <package>
查看已安装包 npm list --depth=0 yarn list --depth=0 pnpm list --depth=0

4.4 脚本执行

操作 npm yarn pnpm
运行脚本 npm run <script> yarn <script> pnpm <script>
查看可用脚本 npm run yarn run pnpm run

4.5 缓存管理

操作 npm yarn pnpm
清理缓存 npm cache clean yarn cache clean pnpm store prune

五、实践与注意事项

5.1 版本管理最佳实践

  1. 使用LTS版本:生产环境建议使用Node.js的LTS(长期支持)版本
  2. 项目版本锁定 :在项目中使用.nvmrc文件指定Node.js版本
  3. 避免sudo:不要使用sudo安装全局包,使用nvm管理用户级安装

5.2 包管理器选择建议

  • npm:适合初学者,Node.js内置,兼容性最好
  • yarn:适合大型项目,依赖安装速度快,工作区支持好
  • pnpm:适合磁盘空间敏感环境,依赖管理严格,节省空间

5.3 常见问题解决

NVM命令找不到
bash 复制代码
# 重新加载配置文件
source ~/.bashrc

# 或者手动加载nvm
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
权限问题
bash 复制代码
# 检查nvm安装目录权限
ls -la ~/.nvm

# 如果权限不正确,修复权限
chown -R $USER:$USER ~/.nvm
包安装失败
bash 复制代码
# 清理缓存后重试
npm cache clean --force
# 或
yarn cache clean
# 或
pnpm store prune
相关推荐
Gogo11211 天前
构建高性能 Node.js 集中式日志体系 (下篇):Pino + PM2 + OpenSearch 代码落地实战
node.js
小岛前端1 天前
Node.js 宣布重大调整,运行十年的规则要改了!
前端·node.js
前端付豪1 天前
Nest 项目小实践之前端注册登陆
前端·node.js·nestjs
codingWhat2 天前
整理「祖传」代码,就是在开发脚手架?
前端·javascript·node.js
ServBay2 天前
Node.js、Bun 与 Deno,2026 年后端运行时选择指南
node.js·deno·bun
chlk1232 天前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑2 天前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件2 天前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
码路飞2 天前
Node.js 中间层我维护了两年,这周终于摊牌了——成本账单算完我人傻了
node.js
深紫色的三北六号2 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移