环境准备:Windows/macOS/Linux系统要求、卸载已存在的Node.js、清理环境变量、确认系统兼容性

说实话,很多人学NVM翻车,不是NVM本身多难,而是环境没收拾干净就开始装。我见过太多次了——明明系统里还挂着旧Node.js,环境变量乱成一锅粥,然后跑来问我“为什么nvm install成功了但node -v还是老版本?”

嗯,这一章咱们就把地基打牢。你跟着我走一遍,后面30章基本不会因为环境问题卡壳。

一、各操作系统的最低要求

先看看你的电脑能不能跑NVM。我列了个表,你对照一下:

操作系统 最低版本要求 架构支持 备注
Windows Windows 7 SP1 / Windows Server 2012 R2 x64, x86 推荐Windows 10+;需PowerShell 5.1+
macOS macOS 10.13 (High Sierra) x64, arm64 (M1/M2) 需Xcode Command Line Tools
Linux 内核 3.10+ / glibc 2.17+ x64, arm64, armv7l 需curl或wget;部分发行版需手动安装build-essential
我的建议:如果你还在用Windows 7,赶紧升级吧。我之前帮一个客户排查,他Windows 7上PowerShell版本太低,nvm-windows装完根本跑不起来。折腾了两小时,最后换了Win10一步到位。

二、卸载已存在的Node.js

这一步很多人会跳过。但我告诉你——千万别跳。NVM和系统全局安装的Node.js会打架,轻则版本冲突,重则PATH变量乱掉,你连npm都用不了。

Windows卸载步骤

  1. 打开「控制面板」→「程序和功能」
  2. 找到Node.js,右键卸载
  3. 手动删除残留目录:C:\Program Files\nodejs、C:\Users\你的用户名\AppData\Roaming\npm、C:\Users\你的用户名\AppData\Roaming\npm-cache
  4. 重启电脑(这一步我吃过亏,不重启PATH缓存不刷新)

macOS/Linux卸载步骤

# 如果通过Homebrew安装
brew uninstall --ignore-dependencies node
brew uninstall --force node

# 如果通过官方pkg安装(macOS)
sudo rm -rf /usr/local/lib/node_modules
sudo rm -rf /usr/local/include/node
sudo rm -f /usr/local/bin/node
sudo rm -f /usr/local/bin/npm
sudo rm -f /usr/local/share/man/man1/node.1

# 清理用户目录下的残留
rm -rf ~/.npm
rm -rf ~/.node-gyp
rm -rf ~/.nvm   # 注意:如果你之前装过nvm,这个目录后面会被覆盖,但先删了更干净
注意:千万不要用sudo apt remove nodejs这种命令就完事了。我曾经在Ubuntu上只跑了apt remove,结果/usr/local/bin/node还在,新装的NVM死活不认。说白了,你得手动确认二进制文件确实被删了。

三、清理环境变量

卸载完Node.js,环境变量里可能还留着旧路径。这就像房子拆了,门牌号还在——系统还是会去那个位置找node命令。

Windows环境变量清理

  1. 右键「此电脑」→「属性」→「高级系统设置」→「环境变量」
  2. 在「系统变量」和「用户变量」中,找到Path变量
  3. 删除所有包含nodejs、npm、AppData\Roaming\npm的条目
  4. 检查是否有NODE_PATH变量,有的话删掉

macOS/Linux环境变量清理

检查以下文件,删除或注释掉与Node.js相关的行:

# 检查这几个文件
~/.bashrc
~/.bash_profile
~/.zshrc
~/.profile

# 典型的脏数据长这样:
export PATH="/usr/local/bin/node:$PATH"
export NODE_PATH="/usr/local/lib/node_modules"
export PATH="$HOME/.npm-global/bin:$PATH"
一个小技巧:清理完后,打开新终端,输入which node。如果返回node not found,说明环境干净了。如果还返回路径,说明你漏了某个文件。

四、确认系统兼容性

环境清理干净了,但你的系统能不能跑NVM,还得看几个关键组件。

Windows:检查PowerShell版本

# 在PowerShell中运行
$PSVersionTable.PSVersion

# 输出示例:
# Major  Minor  Build  Revision
# -----  -----  -----  --------
# 5      1      19041  1320

版本必须≥5.1。如果低于这个版本,去微软官网下载Windows Management Framework 5.1升级。

macOS:安装Xcode Command Line Tools

xcode-select --install

弹窗出来后点「安装」。这个过程大概5-10分钟。我记得第一次装的时候等得有点不耐烦,但没它不行——NVM编译Node.js源码时依赖这些工具链。

Linux:安装基础编译工具

# Debian/Ubuntu
sudo apt update
sudo apt install build-essential curl

# CentOS/RHEL
sudo yum groupinstall 'Development Tools'
sudo yum install curl

# 验证
gcc --version
make --version
curl --version
避坑指南:我曾经在CentOS 7上没装Development Tools,结果nvm install 18的时候编译报错,提示g++: command not found。你想想看,折腾了半小时才发现是工具链没装全。

五、最终验证清单

在开始安装NVM之前,我建议你跑一遍这个清单:

  1. node --version → 返回command not found ✅
  2. npm --version → 返回command not found ✅
  3. echo $PATH(Windows用echo %PATH%)→ 没有nodejs相关路径 ✅
  4. 操作系统版本满足最低要求 ✅
  5. PowerShell / Xcode CLI / build-essential 已安装 ✅

全部通过?好,你的环境已经准备好了。下一章咱们就开始装NVM。

环境准备核心流程 检查系统版本 卸载旧 Node.js 清理环境变量 确认系统兼容性 ⚠️ 常见翻车点 • 没卸载旧Node直接装NVM • 环境变量残留导致PATH混乱 • 忘记装编译工具链 ✅ 最终验证 which node → not found

这张图把整个流程串起来了。你按这个顺序走,基本不会出问题。我见过太多人跳步骤——比如直接装NVM,结果旧Node.js还在,最后两个版本互相覆盖,项目跑不起来。说白了,环境准备就是磨刀不误砍柴工。