一切福田,不離方寸,從心而覓,感無不通。

【2026 最新】macOS 上安装 FNM 管理多版本 Node.js 完整教程

目录

一、FNM 简介

二、前置条件

三、安装 FNM

3.1 手动一键安装脚本(复制即用)

3.2 AI 智能体协助安装

3.3 手动自行安装

方法一:Homebrew 安装(✅ 推荐)

方法二:官方安装脚本

方法三:Cargo 安装(适合 Rust 开发者)

四、配置 Shell 环境

4.1 编辑 ~/.zshrc

4.2 如果你用的是 bash

4.3 使配置生效

4.4 验证安装

五、基本使用

5.1 安装 Node.js 版本

5.2 查看已安装版本

5.3 切换版本

5.4 设置默认版本

5.5 卸载某个版本

5.6 查看远程可用版本

六、项目级自动切换(重点)

方式一:.node-version 文件

方式二:.nvmrc 文件(兼容 nvm 生态)

方式三:package.json 中的 engines 字段

七、常见问题排查

❌ command not found: fnm

❌ VS Code 终端找不到 fnm

❌ 下载 Node 版本超时(国内网络)

❌ 权限问题

八、从 nvm 迁移到 fnm

九、常用命令速查表


一、FNM 简介

FNM(Fast Node Manager)是用 Rust 编写的 Node.js 版本管理器,相比传统的 nvm

  • ⚡ 启动和切换速度快 40~50 倍
  • 🖥️ 跨平台(macOS / Linux / Windows)
  • 📄 支持 .node-version.nvmrc 自动识别
  • 🪶 内存占用极低

二、前置条件

条件 说明
macOS 版本 macOS 10.15+(推荐 12+)
Shell zsh(macOS 默认)或 bash
Xcode CLI Tools xcode-select --install(一般已预装)
Homebrew(可选) 推荐提前安装

检查是否已有 Xcode CLI Tools:


三、安装 FNM

3.1 手动一键安装脚本(复制即用)

3.2 AI 智能体协助安装

也可以让你的 AI 智能帮你一键下载安装,复制下述命令直接给它即可:

 

英文版:

 

方法一:Homebrew 安装(✅ 推荐)

方法二:官方安装脚本

该脚本会自动下载二进制文件并放入 ~/.local/share/fnm,同时提示你配置 shell。

方法三:Cargo 安装(适合 Rust 开发者)

 


四、配置 Shell 环境

安装完成后,必须让 shell 在启动时加载 fnm。macOS 默认使用 zsh

4.1 编辑 ~/.zshrc

在文件末尾添加:

Control + O → 保存(底部会提示文件名,直接按 Enter 确认)

Control + X → 退出

参数说明:

  • --use-on-cd:进入目录时自动读取 .node-version / .nvmrc 并切换版本
  • --shell zsh:生成 zsh 兼容的环境变量脚本

4.2 如果你用的是 bash

编辑 ~/.bashrc~/.bash_profile

4.4 验证安装


五、基本使用

5.1 安装 Node.js 版本

5.2 查看已安装版本

5.3 切换版本

5.4 设置默认版本

之后每次打开新终端都会自动使用 Node 22。

5.5 卸载某个版本

5.6 查看远程可用版本


六、项目级自动切换(重点)

方式一:.node-version 文件

在项目根目录:

只要你在 ~/.zshrc 中配置了 --use-on-cd,进入该目录就会自动切换:

方式二:.nvmrc 文件(兼容 nvm 生态)

fnm 同样能识别 .nvmrc,方便团队中有人用 nvm 的场景。

方式三:package.json 中的 engines 字段

⚠️ 此方式需要 fnm 较新版本支持,优先推荐 .node-version


七、常见问题排查

command not found: fnm

VS Code 集成终端有时不加载完整的 .zshrc。解决方案:

  1. 打开 VS Code 设置 → 搜索 terminal.integrated.env.osx
  2. 或在 .zshrc 最顶部(其他插件之前)加入 fnm 初始化
  3. 完全退出 VS Code 后重新打开

❌ 下载 Node 版本超时(国内网络)

fnm 从 GitHub / nodejs.org 下载二进制,国内可能较慢。可设置镜像:

然后:

❌ 权限问题


八、从 nvm 迁移到 fnm


九、常用命令速查表

命令 作用
fnm install <version> 安装指定版本
fnm install --lts 安装最新 LTS
fnm list 查看已安装版本
fnm list-remote 查看所有可安装版本
fnm use <version> 切换当前 shell 的版本
fnm default <version> 设置全局默认版本
fnm current 查看当前使用的版本
fnm uninstall <version> 卸载某版本
fnm alias <name> <version> 创建版本别名
fnm env 输出环境变量(调试用)

 

from:https://blog.csdn.net/2301_80035882/article/details/163728561