Linux(Ubuntu/CentOS)服务器安装Node.js的详细步骤
本文详细介绍在Ubuntu与CentOS Linux服务器上安装Node.js的完整步骤,涵盖官方NodeSource源安装、NVM多版本管理以及环境验证与全局配置。
在 Linux 云服务器或物理机上部署后端服务与前端构建管道时,安装最新长期支持版(LTS)的 Node.js 是最基础的环境准备环节。多数 Linux 发行版自带的官方软件仓库维护周期较长,直接通过系统默认源安装往往只能获得较旧的版本(例如 Ubuntu 20.04 默认源中的 Node.js 10.x 或 CentOS 7 默认源中的 Node.js 16.x),无法满足现代框架与依赖库的运行标准。本文将分别针对 Debian/Ubuntu 系统与 RHEL/CentOS/Rocky Linux 系统,提供通过 NodeSource 官方二进制源 以及 NVM(Node Version Manager)多版本管理器 的完整安装与配置流程,并说明关键依赖与权限隔离措施。
安装前的准备与环境决策
在连接到服务器后,首先需要判断服务器的系统架构与当前运行环境,并根据业务场景选择最适宜的安装路径:
- NodeSource 官方源安装(推荐用于生产环境):将预编译的稳定二进制包以系统级服务的方式安装在
/usr/bin/node,具有系统级全局可用性,便于与 Systemd、PM2 或各类容器构建脚本直接集成,升级维护方便。 - NVM 安装(推荐用于测试与多项目服务器):安装在当前普通用户的用户主目录(
~/.nvm)下,完全无需 root 或 sudo 提权,可在多个不同的 Node.js 版本(如 v18、v20、v22)之间无缝秒级切换,且天然避免 npm 全局安装时的文件所有权冲突。
执行以下命令确认操作系统的基本内核与架构:
uname -m && cat /etc/os-release
示例输出:架构回显为 x86_64 或 aarch64,ID 字段显示为 ubuntu、centos、rhel 或 rocky。
Ubuntu / Debian 系统安装步骤 (NodeSource 方式)
该方法适用于 Ubuntu 20.04 LTS、22.04 LTS、24.04 LTS 以及 Debian 11/12。NodeSource 维护了官方同步的 Debian 软件包仓库,包含完整的 LTS 运行时与 npm 工具。
步骤 1:更新本地 APT 缓存并安装基础通信工具
在终端中执行系统源索引更新,并安装 HTTPS 传输、CA 证书与 GPG 密钥工具:
sudo apt-get update
sudo apt-get install -y ca-certificates curl gnupg
步骤 2:导入 NodeSource GPG 密钥与仓库清单
以当前主流的 Node.js 20.x LTS(长期稳定支持版)为例,运行官方自动化脚本注入仓库密钥与源配置:
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
该脚本会自动完成三项关键操作:自动识别 Ubuntu 发行版本代号(如 focal、jammy、noble)、导入 NodeSource 官方 GPG 验证公钥至系统信任环中,并在 /etc/apt/sources.list.d/nodesource.list 生成对应的 APT 源列表。
步骤 3:安装 Node.js 与 npm
执行标准安装命令。在 NodeSource 维护的包中,nodejs 包已直接内嵌捆绑了对应版本的 npm:
sudo apt-get install -y nodejs
步骤 4:安装原生构建依赖(build-essential)
部分 npm 模块(如加密算法库、图片处理模块 sharp 等)在安装时需要编译底层 C/C++ 扩展。在 Ubuntu 上缺少编译器将导致安装中断,建议预先安装基础构建链:
sudo apt-get install -y build-essential
CentOS / RHEL / Rocky Linux 系统安装步骤 (NodeSource 方式)
对于 RedHat 系列发行版,操作流程通过 YUM(CentOS 7)或 DNF(CentOS 8/9、Rocky Linux、AlmaLinux)进行管理。
步骤 1:下载并配置 NodeSource RPM 软件源
执行自动化脚本,将 NodeSource 官方 RPM 仓库写入系统的 /etc/yum.repos.d/nodesource-el.repo 中:
curl -fsSL https://rpm.nodesource.com/setup_20.x | sudo bash -
步骤 2:通过包管理器执行安装
对于 CentOS 7 服务器,使用 yum 执行安装:
sudo yum install -y nodejs
对于 CentOS 8、CentOS Stream、RHEL 8/9 或 Rocky Linux 8/9,建议优先使用现代包管理器 dnf:
sudo dnf install -y nodejs
步骤 3:安装开发构建套件
安装 RPM 生态下的编译器组群,确保后续 node-gyp 本地编译无障碍执行:
sudo yum groupinstall -y "Development Tools"
Node.js 18.x 及更新版本(包括 20.x、22.x)在编译构建时依赖
GLIBC 2.28 或更高版本。而 CentOS 7 官方内核默认附带的 GLIBC 为 2.17。如果在 CentOS 7 上强制安装 Node.js 18+,在执行 node -v 时会提示 node: /lib64/libc.so.6: version 'GLIBC_2.28' not found。若您的服务器运行在 CentOS 7 且不可更换系统,生产环境请选用 Node.js 16.x LTS,或者建议升级操作系统至 Rocky Linux 8/9。
基于 NVM 安装与多版本灵活管理
如果一台服务器上部署了多个微服务,各自要求不同的大版本 Node.js;或者你没有服务器的 root 权限,使用 NVM(Node Version Manager)是最佳解决方案。
步骤 1:下载并安装 NVM 脚本
使用 curl 下载 NVM 安装脚本(可根据实际需要指定最新发布 tag):
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
步骤 2:加载环境变量配置
安装脚本会将引导逻辑写入当前用户的 ~/.bashrc(或 ~/.zshrc)。执行以下命令使配置立即在当前会话生效:
source ~/.bashrc
验证 nvm 是否可用:
command -v nvm
示例输出:终端返回 "nvm",表明函数加载成功。
步骤 3:安装目标 Node.js 版本与切换
通过 NVM 可以轻松安装并指定默认版本:
# 查看所有可用的 LTS 版本
nvm ls-remote --lts
# 安装最新的 20.x LTS 版本
nvm install 20
# 设置默认别名
nvm alias default 20
# 切换并使用指定版本
nvm use 20
安装结果验证与生产环境规范配置
无论是通过 NodeSource 还是 NVM 安装,完成之后都需要对可执行程序路径、版本号及全局模块目录进行核查。
1. 验证版本与可执行文件路径
依次执行以下命令,检查版本号与二进制解析定位:
node -v
npm -v
which node
示例输出:
v20.18.0
10.8.2
/usr/bin/node (若使用 NVM 则为 /home/username/.nvm/versions/node/v20.18.0/bin/node)
2. 规范 npm 全局包安装路径(规避 sudo npm 风险)
在通过 NodeSource 安装的系统全局模式下,执行 npm install -g <package> 默认会试图写入 /usr/lib/node_modules,若直接用 sudo npm 安装,可能导致文件属主变为 root、引发安全隐患或脚本权限报错。业界通行的做法是在用户目录下设立专属的全局包前缀:
# 1. 创建本地专属全局目录
mkdir -p ~/.npm-global
# 2. 设置 npm 前缀
npm config set prefix '~/.npm-global'
# 3. 将新路径写入环境变量
echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
# 4. 测试全局安装进程管理工具 PM2
npm install -g pm2
pm2 --version
3. 配置国内镜像源加速下载(可选)
在中国大陆区域的云服务器上,直接访问默认的 npmjs.org 官方镜像源可能出现延迟过高或网络超时。可以按需配置国内镜像源以提升依赖安装效率:
# 查看当前镜像源
npm config get registry
# 切换为国内镜像源
npm config set registry https://registry.npmmirror.com
# 验证源设置
npm config get registry
方案对比与选型参考
| 对比维度 | NodeSource 官方二进制源 | NVM (Node Version Manager) |
|---|---|---|
| 安装位置 | /usr/bin/node(系统级全局路径) |
~/.nvm/versions/node/(用户家目录) |
| 权限要求 | 需要 root / sudo 提权执行安装 | 普通用户即可安装与管理,零 root 依赖 |
| 多版本并存 | 同一时间系统只能保留一个激活版本 | 支持任意多个大版本、小版本共存并秒级切换 |
| 开机自启/守护集成 | 天然适配 Systemd 服务的标准 ExecStart 路径 | Systemd 中需指定具体的绝对路径或加载 nvm 包装脚本 |
| 推荐使用场景 | 生产环境服务器、单一微服务节点、CI/CD 构建节点 | 开发测试机、混合老旧系统兼容、非 root 运维账户 |
通过上述步骤,无论你的服务器运行的是 Ubuntu 还是 CentOS/RHEL 系列系统,均可安全、标准且可控地完成 Node.js 运行时的部署与环境调优。
Node.js和浏览器JavaScript有什么区别:文件系统与网络能力扩展
2026-11-12 15:05:17
Node.js官网打不开?国内高速下载镜像站汇总
2026-11-12 08:34:18
Node.js官网下载页面显示不全怎么解决
2026-11-11 15:39:49
macOS下用Homebrew安装Node.js及M芯片兼容性说明
2026-11-11 14:28:22
Windows系统安装Node.js及配置环境变量详细步骤
2026-11-11 14:28:18








