news 2026/1/24 9:25:02

为 fnm 配置镜像源(附:fnm 安装教程)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
为 fnm 配置镜像源(附:fnm 安装教程)

本文针对fnm工具安装Node.js时遇到的下载问题,提供了详细解决方案。


主要问题源于国外服务器访问慢,建议切换至国内镜像源(如清华大学镜像站)。


提供Windows、macOS/Linux的配置方法,通过设置环境变量实现。


若fnm未安装,推荐使用PowerShell脚本或手动下载安装,并强调必须添加PATH环境变量。


对于网络访问问题,给出手动下载GitHub发布的fnm.exe方案。


最后指导验证安装、配置镜像源及安装Node.js的完整流程,特别提醒Windows用户注意路径设置和终端重启。


为fnm配置镜像源


官网的Node.js非Docker版本可以正常下载,fnm等工具也有对应的资源。出现“无法下载”或“无对应资源”的提示,是因为它们默认从国外服务器获取文件,在国内访问速度可能很慢或不稳定。


要解决此问题,最有效的方法是更换软件镜像源,从国内更快的镜像服务器下载Node.js。


为fnm配置镜像源

你可以通过设置一个环境变量,将fnm的下载源切换到国内的镜像站(如清华大学开源镜像站),这样能大大提升下载速度。

根据你的操作系统,在终端或命令行中执行以下命令:

Windows(在PowerShell或CMD中执行):

powershell

# 设置fnm镜像源 $env:FNM_NODE_DIST_MIRROR="https://mirrors4.tuna.tsinghua.edu.cn/nodejs-release/" # 然后正常使用fnm安装版本,例如 fnm install 20

macOS 或 Linux(在Terminal中执行):

bash

# 设置fnm镜像源(临时有效) export FNM_NODE_DIST_MIRROR="https://mirrors4.tuna.tsinghua.edu.cn/nodejs-release/" # 然后正常使用fnm安装版本,例如 fnm install 20

提示:上面的export命令只在当前终端窗口有效。若想永久生效,可以将这行命令添加到你的Shell配置文件(如~/.bashrc,~/.zshrc~/.profile)中,然后重启终端。

其他安装途径

如果你只是想快速获取Node.js进行开发,除了使用版本管理器,也可以选择以下更直接的方式:

  1. 从官网手动下载:直接访问Node.js 官网下载页,选择合适的安装包(如Windows的.msi安装程序或macOS的.pkg安装包。如果下载缓慢,可以稍等一会儿,或尝试在网络较好的时段操作。

  2. 通过系统包管理器安装:例如在macOS上可以使用brew install node,或在Ubuntu上使用apt install nodejs。但这种方式安装的版本可能不是最新,且不便于管理多个版本。


两种方案如何选择?

为了帮你快速决定,可以参考这个对比:

方案优点缺点适合场景
配置fnm镜像源一劳永逸,后续所有版本安装都很快需要执行一行命令强烈推荐,尤其是需要管理多个Node.js版本的开发者
官网手动下载一次性操作,无需配置每次安装新版本都需重新下载仅需快速安装单一、长期使用的Node.js版本

总的来说,如果你打算长期开发且需要灵活切换Node.js版本,配置fnm的镜像源是最佳方案


针对Windows系统使用最新LTS Node.js版本的详细配置步骤


配置镜像源

方法一和二中,选择最适合你的一个即可。通常情况下,方法一(临时设置)适合测试或偶尔使用,方法二(永久配置)是更推荐的做法。

配置方法作用范围操作场景
方法一:临时设置当前终端会话仅当前窗口有效,关闭后失效。适合快速测试。
方法二:设置系统变量全局永久有效配置后对所有终端生效,一劳永逸。

方法一:临时设置(适合快速测试)

在打开的PowerShellCMD中,直接运行以下命令来设置镜像变量,然后再安装Node.js:

powershell

# 设置镜像源变量(这里以腾讯云镜像为例) $env:FNM_NODE_DIST_MIRROR="https://mirrors.tencent.com/nodejs-release/" # 然后安装最新的LTS版本 fnm install --lts

方法二:设置系统环境变量(推荐,永久生效)

这是最常用的方法,配置一次即可。

  1. 打开系统属性:在Windows搜索栏输入“环境变量”,选择“编辑系统环境变量”。

  2. 新建系统变量:点击“环境变量” -> 在“系统变量”区域点击“新建”。

    • 变量名FNM_NODE_DIST_MIRROR

    • 变量值:选择一个镜像地址填入,例如:

      • 腾讯云镜像:https://mirrors.tencent.com/nodejs-release/

      • npmmirror(淘宝镜像):https://npmmirror.com/mirrors/node/

      • 兰州大学镜像:https://mirrors.lzu.edu.cn/nodejs-release/

  3. 保存并生效:点击所有“确定”按钮保存。务必重新启动你的终端(PowerShell或CMD),让新的环境变量生效。


配置完成后,打开新的PowerShell或CMD窗口,直接执行安装命令即可:

powershell

fnm install --lts

命令会自动下载并安装当前最新的Node.js LTS版本。


验证与使用

安装完成后,你可以通过以下命令验证:

命令作用预期结果示例
fnm current查看当前激活的Node.js版本v20.17.0(版本号可能不同)
node --version验证Node.js命令是否可用同上
npm --version验证npm是否随Node.js一同安装成功显示对应的npm版本号

设置默认版本(避免每次重启终端需手动切换)

powershell

fnm default 20 # 将20.x系列的最新版本设为默认,请根据实际安装版本调整

其他补充

  1. 如果镜像不生效:请再次确认终端是否以管理员身份运行(某些情况下需要),或者尝试重启电脑使环境变量彻底生效。

  2. 获取最新LTS版本号:你也可以先通过fnm list-remote命令列出所有远程版本,找到标有(LTS)的最新版本号,然后用fnm install <具体版本号>安装。


按照以上步骤操作,你应该就能顺利地在Windows上通过fnm快速安装Node.js了。


C:\Users\86178>fnm install --lts 'fnm' 不是内部或外部命令,也不是可运行的程序 或批处理文件。


正确安装 fnm 工具


📦第一步:安装 fnm(Node.js 版本管理器)

由于你使用的是 Windows 系统,推荐通过以下方式之一安装。任选一种即可:

1. 使用 Windows 包管理器winget(推荐,最简单)
管理员身份打开PowerShell终端 (Terminal),然后执行:

powershell

winget install Schniz.fnm

2. 使用安装脚本
同样以管理员身份打开PowerShell,然后执行:

powershell

# 此命令会自动下载并安装 fnm curl -fsSL https://fnm.vercel.app/install | bash

注:如果提示wingetcurl命令不存在,说明你的系统版本较旧或未包含这些工具。你可以访问fnm 的 GitHub 发布页面,手动下载.msi安装包进行安装。

⚙️第二步:将 fnm 添加到系统环境变量

安装完成后,为了让fnm命令在任意终端中可用,必须将其安装目录添加到系统的PATH环境变量中。这是解决问题的关键。

具体步骤:

  1. 在 Windows 搜索框输入“编辑系统环境变量”并打开。

  2. 点击下方“环境变量(N)...”按钮。

  3. “系统变量”区域,找到并选中名为Path的变量,点击“编辑”

  4. 点击“新建”,然后添加一条新路径。根据你的安装方式,路径通常是以下之一:

    • 如果你使用winget或脚本安装:添加%USERPROFILE%\.fnm

    • 如果你手动安装了.msi:路径可能是C:\Users\你的用户名\AppData\Roaming\fnm或安装时指定的目录。

  5. 点击所有“确定”按钮保存。

  6. 非常重要完全关闭你当前的命令行窗口(CMD/PowerShell),然后重新打开一个新的。这样新的PATH设置才会生效。

第三步:验证安装并配置镜像源

打开新的命令行窗口后,按顺序执行以下步骤:

  1. 验证 fnm 是否安装成功

    powershell

    fnm --version

    如果显示版本号(如1.x.x),则说明安装成功。

  2. 按照之前的指引,配置 fnm 的镜像源(以腾讯云为例)

    powershell

    # 设置环境变量(只对当前窗口有效,测试用) $env:FNM_NODE_DIST_MIRROR="https://mirrors.tencent.com/nodejs-release/" # 如果想永久生效,请按照之前的方法将其添加为“系统环境变量”
  3. 安装最新的 Node.js LTS 版本

    powershell

    fnm install --lts

🔍故障排查

如果上述步骤后问题依旧,请检查:

  • 是否以管理员身份运行了安装命令。

  • 添加的PATH路径是否完全正确(特别是.fnm文件夹是否存在)。

  • 在完成PATH修改后,是否重启了命令行窗口


PS C:\Users\86178> winget install Schniz.fnm 尝试更新源失败: winget “msstore”源要求在使用前查看以下协议。 Terms of Transaction: https://aka.ms/microsoft-store-terms-of-transaction 源要求将当前计算机的 2 个字母的地理区域发送到后端服务才能正常工作,(例如"US")。


替代方案:使用 PowerShell 安装脚本 (推荐)

这是官方推荐且目前最可靠的方法。请以管理员身份运行 PowerShell,然后逐行执行以下命令:

powershell

# 1. 允许执行远程脚本(执行后选 Y 或 A) Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser # 2. 下载并执行 fnm 安装脚本 curl -fsSL https://fnm.vercel.app/install | bash # 3. 安装完成后,将 fnm 添加到当前会话的 PATH 中 # 这行命令通常是安装脚本最后输出的,如果下面这行不生效,请尝试安装脚本最后一行提示的命令 & "C:\Users\86178\.fnm\fnm.exe" env --shell powershell | Invoke-Expression

执行完以上命令后,立即在新的 PowerShell 窗口中测试:

powershell

fnm --version

如果显示版本号(如1.x.x),则安装成功。


📥备用方案:手动下载安装

如果脚本安装不成功,可以手动下载安装:

  1. 下载安装包

    • 访问 fnm 的 GitHub 发布页面。

    • 找到最新的.msi安装包(例如fnm-windows-x64.msi)并下载。

  2. 运行安装程序

    • 双击下载的.msi文件,像安装普通软件一样完成安装。

  3. 验证安装

    • 安装完成后,重新打开一个 PowerShell 窗口,输入fnm --version查看是否成功。


⚙️安装后的关键步骤 (无论用哪种方法安装)

安装成功后,必须将 fnm 的路径添加到系统PATH环境变量中,以确保永久可用。这是你之前遇到'fnm' 不是内部或外部命令的根本原因。


添加 PATH 的步骤 (非常重要!)

  1. 在 Windows 搜索框输入“编辑系统环境变量”并打开。

  2. 点击下方“环境变量”

  3. “系统变量”区域,找到并选中Path,点击“编辑”

  4. 点击“新建”,然后添加 fnm 的安装路径。根据你的安装方式,路径通常是:

    • 脚本安装C:\Users\86178\.fnm

    • 手动安装 (MSI):可能类似C:\Users\86178\AppData\Roaming\fnm

  5. 点击所有“确定”保存。

  6. 关闭所有 PowerShell/CMD 窗口,再重新打开一个新的


最终验证与配置

完成上述所有步骤后,在新终端中按顺序执行:

  1. 验证命令fnm --version(应显示版本)

  2. 配置镜像源(以腾讯云为例,复制并执行):

    powershell

    $env:FNM_NODE_DIST_MIRROR="https://mirrors.tencent.com/nodejs-release/" # 如果想永久生效,可将 `FNM_NODE_DIST_MIRROR` 和上面的镜像地址,像添加PATH一样,添加为“系统环境变量”
  3. 安装 Node.jsfnm install --lts


PS C:\Users\86178> curl -fsSL https://fnm.vercel.app/install | bash Invoke-WebRequest : 找不到与参数名称“fsSL”匹配的参数。


Windows PowerShell 自带的curl实际上是Invoke-WebRequest命令的别名,它不支持 Linuxcurl-fsSL参数。解决方法很简单:使用 PowerShell 原生的命令替代


🔧正确的安装命令

请继续在当前的 PowerShell(管理员身份)中,执行以下修正后的命令

powershell

# 使用 PowerShell 的 Invoke-WebRequest 命令下载并执行安装脚本 irm https://fnm.vercel.app/install -o install.ps1; .\install.ps1

命令说明

  • irmInvoke-RestMethod的别名,是 PowerShell 中用于网络请求的命令,可以在这里替代curl

  • -o install.ps1表示将下载的脚本保存为当前目录下的install.ps1文件。

  • ; .\install.ps1表示前一个命令完成后,执行这个安装脚本。

📝安装后的必要步骤

脚本执行完毕后,请务必按顺序完成以下两步

  1. 按照安装脚本最后几行的提示,执行它输出的命令
    通常会是类似下面这样的命令,用于将fnm加载到当前会话。你必须手动执行它

    powershell

    & "C:\Users\86178\.fnm\fnm.exe" env --shell powershell | Invoke-Expression
  2. 永久添加 fnm 到 PATH(关键!)
    为了避免你再次遇到'fnm' 不是内部命令的错误,安装后必须手动将其添加到系统环境变量。这和之前说的方法完全一样:

    • 打开“编辑系统环境变量”

    • “系统变量”中找到Path并编辑。

    • 点击“新建”,添加 fnm 的安装目录,通常是C:\Users\86178\.fnm

    • 点击“确定”保存,并彻底重启你的 PowerShell 窗口

验证与后续操作

打开新的 PowerShell 窗口,执行以下流程:

步骤命令预期结果
1.验证安装fnm --version显示版本号(如1.x.x
2.配置镜像源$env:FNM_NODE_DIST_MIRROR="https://mirrors.tencent.com/nodejs-release/"无错误提示
3.安装Node.jsfnm install --lts开始高速下载并安装最新LTS版本

如果配置镜像源想永久生效,还是像之前说的,将FNM_NODE_DIST_MIRROR变量和镜像地址添加到“系统环境变量”中。

💎总结

你现在遇到的问题链条是:

  1. winget源故障 → 改用脚本安装

  2. PowerShell 的curl语法不同 → 改用irm命令

请先使用irm https://fnm.vercel.app/install -o install.ps1; .\install.ps1这条命令完成安装,并务必执行安装脚本输出的命令以及手动添加 PATH,即可解决所有问题。


PS C:\Users\86178> irm https://fnm.vercel.app/install -o install.ps1; .\install.ps1 irm : 无法连接到远程服务器


这个错误表明你的网络无法访问fnm.vercel.app这个域名,这在国内有时会发生。但请放心,我们有直接且100%可行的解决方案。

💡核心解决方案:手动下载安装

既然网络访问不畅,我们绕开它,直接从 GitHub 下载官方编译好的fnm可执行文件。

请严格按以下步骤操作:

第一步:手动下载 fnm 程序

  1. 用浏览器打开 GitHub 发布页面:https://github.com/Schniz/fnm/releases

  2. 在 “Assets” 部分,找到并下载文件名类似fnm-windows-x64.zip的压缩包(选择最新版本即可)。

  3. 将下载的.zip文件解压。你会得到一个名为fnm.exe的文件。

第二步:放置 fnm.exe 并配置环境变量 (最关键!)

  1. C:\Users\86178目录下(也就是你当前 PowerShell 所在的目录),新建一个文件夹,命名为.fnm(注意前面有个点)。

  2. 将解压得到的fnm.exe文件移动或复制到C:\Users\86178\.fnm\目录下

  3. 将 fnm 添加到系统 PATH 环境变量

    • 在 Windows 搜索框输入“编辑系统环境变量”并打开。

    • 点击“环境变量”-> 在“系统变量”区域找到并选中Path-> 点击“编辑”

    • 点击“新建”,然后输入 fnm 的完整路径:C:\Users\86178\.fnm

    • 点击所有“确定”保存。

第三步:验证安装并配置镜像源

  1. 彻底关闭当前所有 PowerShell 或 CMD 窗口,然后重新以管理员身份打开一个新的 PowerShell

  2. 输入以下命令验证fnm是否可用:

    powershell

    fnm --version
    • 如果成功,会显示版本号(如1.x.x)。

    • 如果仍然提示“不是内部命令”,请回到第二步,仔细检查路径是否添加正确,并确保已重启终端。

  3. 配置国内镜像源(以腾讯云为例,在 PowerShell 中执行):

    powershell

    $env:FNM_NODE_DIST_MIRROR="https://mirrors.tencent.com/nodejs-release/"
    • (如果你想永久生效,可以像添加 PATH 一样,将FNM_NODE_DIST_MIRROR也添加为一个新的“系统变量”,值为上面的镜像地址)。

第四步:安装最新 Node.js LTS 版本
执行最终命令:

powershell

fnm install --lts

重要提示

  • 确保你下载的是fnm-windows-x64.zip,而不是源码包。

  • PATH环境变量的修改和终端重启是成功的关键,系统需要重新加载配置才能找到fnm命令。

  • 手动下载的方式完全绕过了网络安装脚本,因此是最可靠的。

完成以上步骤后,你应该就能顺利安装 Node.js 了。


GitHub 打不开,暂且放弃。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/1/22 14:21:41

告别繁琐配置!使用一锤定音脚本快速部署HuggingFace镜像模型

告别繁琐配置&#xff01;使用一锤定音脚本快速部署HuggingFace镜像模型 在大模型技术飞速发展的今天&#xff0c;越来越多的研究者和开发者希望快速上手前沿模型——无论是微调一个 Qwen-VL 来做图文理解&#xff0c;还是部署一个 LLaMA 推理服务供团队试用。但现实往往令人望…

作者头像 李华
网站建设 2026/1/22 16:04:42

5分钟快速上手Material You风格音乐播放器:music-you完整指南

5分钟快速上手Material You风格音乐播放器&#xff1a;music-you完整指南 【免费下载链接】music-you &#x1fa97; 一个美观简约的Material Design 3 (Material You) 风格pc音乐播放器 项目地址: https://gitcode.com/GitHub_Trending/mu/music-you 在数字音乐时代&am…

作者头像 李华
网站建设 2026/1/23 20:38:36

ESP32-P4 SD卡与无线通信终极配置指南

ESP32-P4 SD卡与无线通信终极配置指南 【免费下载链接】esp-idf Espressif IoT Development Framework. Official development framework for Espressif SoCs. 项目地址: https://gitcode.com/GitHub_Trending/es/esp-idf 为什么需要解决共存问题&#xff1f; 在ESP32-…

作者头像 李华
网站建设 2026/1/22 1:49:47

756. 金字塔转换矩阵

756. 金字塔转换矩阵 题目链接&#xff1a;756. 金字塔转换矩阵 代码如下&#xff1a; class Solution { public:bool pyramidTransition(string bottom, vector<string>& allowed) {string groups[6][6]{};//三角形底部两个字母-》[三角形顶部字母]for (auto&…

作者头像 李华
网站建设 2026/1/22 10:10:47

BookStack终极指南:简单高效的技术文档管理解决方案

BookStack终极指南&#xff1a;简单高效的技术文档管理解决方案 【免费下载链接】BookStack A platform to create documentation/wiki content built with PHP & Laravel 项目地址: https://gitcode.com/gh_mirrors/bo/BookStack BookStack是一款基于PHP和Laravel框…

作者头像 李华
网站建设 2026/1/19 11:24:44

从零构建移动端智能垃圾分类系统:MobileNetV1_ms实战指南

清晨的阳光透过窗户洒在厨房里&#xff0c;小王面对着一堆垃圾犯了愁&#xff1a;这个塑料瓶是可回收物&#xff0c;那个果皮是厨余垃圾&#xff0c;还有那个废电池...如果能有个智能助手帮忙识别该多好&#xff01;这正是我们今天要实现的移动端智能垃圾分类系统&#xff0c;基…

作者头像 李华