在 CentOS 系统上部署 Node.js 环境是许多开发者和系统管理员的常见需求,Node.js 作为一个基于 Chrome V8 引擎的 JavaScript 运行时,凭借其事件驱动、非阻塞 I/O 模型,在构建高性能、可扩展的网络应用方面表现出色,本文将详细介绍在 CentOS 系统中,通过 yum
包管理器安装 Node.js 的几种主流方法,并对各自的优缺点进行分析,旨在为您提供一份清晰、全面且实用的操作指南。
使用 CentOS 默认 Yum 源安装
这是最直接、最简单的安装方式,但通常不推荐用于生产环境或需要新特性的开发场景,因为 CentOS 官方仓库中的软件包为了追求稳定性,版本更新往往非常滞后。
操作步骤:
更新系统软件包
在进行任何安装之前,首先更新系统到最新状态是一个良好的习惯。sudo yum update -y
安装 EPEL 仓库
Node.js 通常包含在 EPEL (Extra Packages for Enterprise Linux) 仓库中。sudo yum install epel-release -y
安装 Node.js
通过yum
直接安装 Node.js,此命令会同时安装 Node.js 和其包管理器 npm。sudo yum install nodejs -y
验证安装
安装完成后,通过以下命令检查 Node.js 和 npm 的版本。node -v npm -v
您可能会发现,通过此方法安装的 Node.js 版本非常陈旧(v6.x 或 v10.x),这可能无法满足现代前端框架或后端应用的需求。
优缺点分析:
- 优点:操作极其简单,仅需几条命令即可完成。
- 缺点:版本严重过时,可能缺少重要的安全更新和新功能,兼容性差。
使用 NodeSource 官方 Yum 源安装(推荐)
NodeSource 是一家致力于提供高质量、最新版本 Node.js 二进制发行版的公司,他们为不同的 Linux 发行版维护了专门的软件仓库,这是目前通过 yum
安装特定、较新版本 Node.js 的最佳实践。
操作步骤:
获取并添加 NodeSource 仓库
NodeSource 提供了便捷的脚本来添加其仓库,您可以根据需要选择安装不同的版本(如 LTS 长期支持版或最新版),以安装 Node.js 18.x (LTS) 为例:curl -fsSL https://rpm.nodesource.com/setup_18.x | sudo bash -
这条命令会下载并执行一个脚本,该脚本会自动配置您的
yum
以指向 NodeSource 的 Node.js 18.x 仓库,您可以访问 NodeSource 的官网查看其他可用版本的脚本链接。安装 Node.js
添加仓库后,再次使用yum
安装 Node.js,它将从 NodeSource 仓库中拉取最新的指定版本。sudo yum install -y nodejs
验证安装
同样,检查版本以确认安装成功。node -v # 输出应类似 v18.x.x npm -v
优缺点分析:
- 优点:可以获得最新的稳定版或 LTS 版 Node.js,安全性和功能有保障,同时仍然使用熟悉的
yum
命令进行管理。 - 缺点:比默认方法多一个添加仓库的步骤。
使用 NVM (Node Version Manager) 安装
对于需要在多个 Node.js 版本之间切换的开发者来说,NVM 是一个无与伦比的工具,它允许您在用户级别安装和管理多个 Node.js 版本,而无需 root 权限,并且可以随时轻松切换。
操作步骤:
下载并安装 NVM
使用curl
或wget
下载并运行 NVM 的安装脚本。curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
(脚本版本号
v0.39.7
可能会更新,建议访问 NVM 的 GitHub 主页获取最新版本。)配置环境变量
安装脚本会自动将 NVM 的环境变量添加到您的 shell 配置文件中(如~/.bash_profile
或~/.zshrc
),您需要重新加载配置文件或重新打开终端使其生效。source ~/.bash_profile
安装和使用 Node.js
- 查看所有可安装的远程版本:
nvm list-remote
- 安装最新的 LTS 版本:
nvm install --lts
- 安装指定版本(20.9.0):
nvm install 20.9.0
- 切换已安装的版本:
nvm use 18.19.0
- 查看当前已安装的版本:
nvm list
- 查看所有可安装的远程版本:
优缺点分析:
- 优点:灵活性极高,轻松管理多版本,无需 sudo 权限,用户隔离。
- 缺点:不是系统级安装,不通过
yum
管理,对于服务器上的单一应用部署可能略显复杂。
三种安装方法对比
安装方法 | 优点 | 缺点 | 适用场景 |
---|---|---|---|
默认 Yum 源 | 操作简单,快速 | 版本极其陈旧,功能和安全有隐患 | 快速测试,且对版本无任何要求的场景 |
NodeSource 源 | 版本新,稳定可靠,仍使用 yum 管理 | 需额外一步添加仓库 | 生产环境和大多数开发场景的首选 |
NVM | 灵活管理多版本,用户级安装,无需 sudo | 脱离 yum 包管理,学习成本稍高 | 需要在不同项目间切换 Node.js 版本的开发者 |
安装后配置与验证
无论采用哪种方法,安装完成后进行一些基本配置是很有必要的。
验证版本
再次确认node -v
和npm -v
输出的版本符合您的预期。配置 npm 镜像源(可选但推荐)
由于网络原因,在中国大陆从 npm 官方源下载包可能会很慢,建议切换到国内镜像源,如淘宝镜像。npm config set registry https://registry.npmmirror.com
配置完成后,可以通过以下命令验证是否成功:
npm config get registry
看到输出
https://registry.npmmirror.com
即表示配置成功。
相关问答 (FAQs)
安装完成后,我该如何彻底卸载 Node.js?
解答: 卸载方法取决于您当初的安装方式。
:可以通过 yum remove
命令卸载。sudo yum remove nodejs
如果您使用了 NodeSource 源,可能还需要手动删除其仓库配置文件:
sudo rm /etc/yum.repos.d/nodesource.repo
- 如果使用 NVM(方法三)安装:卸载非常简单,使用
nvm uninstall
命令即可卸载指定版本。nvm uninstall 18.19.0
如果想完全移除 NVM,只需删除其安装目录(通常在
~/.nvm
)并从您的 shell 配置文件(如~/.bash_profile
)中移除由安装脚本添加的配置行即可。
为什么我不应该直接使用 CentOS 默认 Yum 源安装 Node.js?
解答: 核心原因在于 版本滞后,CentOS 作为企业级操作系统,其首要目标是稳定性和可靠性,其官方软件仓库中的软件包版本会经过长时间的测试,通常不会跟进到最新的上游版本,Node.js 是一个发展非常迅速的项目,新版本不仅包含性能优化和新功能,更重要的是修复了已知的安全漏洞,使用一个过时的版本(v6.x)意味着您的应用可能无法运行现代的 JavaScript 代码,并且暴露在已知的安全风险之下,为了获得更好的性能、功能支持和安全保障,强烈推荐使用 NodeSource 源或 NVM 来获取一个较新的、维护良好的 Node.js 版本。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复