如何修复 Windows NVM 的 `NVM_SYMLINK` 激活错误

发布: (2026年3月4日 GMT+8 19:17)
4 分钟阅读
原文: Dev.to

Source: Dev.to

为什么会出现此错误

当使用官方的 Windows 安装程序安装 Node.js 时,它会创建以下目录:

C:\Program Files\nodejs

NVM for Windows 使用同一路径作为符号链接(NVM_SYMLINK),以在不同的 Node 版本之间动态切换。如果该位置已经存在一个实际目录,NVM 无法覆盖它,激活就会失败。

步骤式修复(保证方法)

步骤 1:关闭所有与 Node 相关的应用

  • 关闭所有终端窗口。
  • 关闭 VS Code 或其他 IDE。
  • 停止任何正在运行的 Node.js 应用。

这样可以防止文件锁定问题。

步骤 2:以管理员身份打开命令提示符

  1. Start
  2. 输入 cmd
  3. 右键 → 以管理员身份运行

需要管理员权限,因为我们要修改 Program Files

步骤 3:获取目录所有权

Windows 可能因为 TrustedInstaller 权限而阻止删除。

takeown /f "C:\Program Files\nodejs" /r /d y

然后授予完整权限:

icacls "C:\Program Files\nodejs" /grant %username%:F /t

步骤 4:结束所有运行中的 Node 进程

taskkill /f /im node.exe
taskkill /f /im npm.exe

步骤 5:删除已有的 Node 目录

rmdir /s /q "C:\Program Files\nodejs"

命令标志说明

  • /s – 删除所有子目录和文件。
  • /q – 抑制确认提示。

仍然出现 “Access is Denied”?

以管理员身份打开 PowerShell 并运行:

Remove-Item "C:\Program Files\nodejs" -Recurse -Force

备选方法(文件被锁定时)

如果目录仍然无法删除:

  1. 重启系统。
  2. 不要 打开任何应用。
  3. 立即以管理员身份打开命令提示符。

再次运行:

rmdir /s /q "C:\Program Files\nodejs"

这通常能解决大多数后台文件锁定问题。

重新启用 NVM

目录删除后:

nvm on

然后安装并激活一个 Node 版本:

nvm install 18
nvm use 18
node -v

此时应能看到已安装的 Node 版本。

迁移到 NVM 时的最佳实践

如果你从直接安装的 Node 切换到 NVM:

  • 首先在 控制面板 中卸载 Node.js。
  • 手动确认 C:\Program Files\nodejs 已被删除。
  • 然后再安装并配置 NVM。

这样可以彻底避免激活冲突。

最后思考

该错误的根本原因是 NVM 依赖符号链接,而 Windows 不允许它覆盖已存在的实际目录。按照上述步骤操作,基本可以在大多数 Windows 环境中彻底解决 NVM_SYMLINK 激活错误。

0 浏览
Back to Blog

相关文章

阅读更多 »

停止从零开始构建 API 仪表板

每个 API 开发者都有过这种经历。你发布了一个 API,有人开始使用它,接着问题就接踵而至: - “我们收到了多少请求?” - “谁是我们的 heavie……”