在Linux系统上安装Node.js:全面指南

Node.js是一个开源、跨平台的JavaScript运行时环境。它允许开发者在浏览器之外运行JavaScript代码,广泛应用于构建Web服务器、命令行工具、桌面应用等。对于许多开发者和系统管理员来说,在Linux服务器或工作站上安装Node.js是进行相关开发或部署应用的第一步。

本文将围绕【linux安装nodejs】这个核心操作,详细解答围绕它的相关疑问,并提供多种具体的安装方法。

为什么要在Linux上安装Node.js?

在Linux系统上安装Node.js是许多应用场景的基础:

  • 运行Web应用后端: 许多现代Web框架(如Express、Koa、NestJS)都基于Node.js,它们需要在服务器端运行来处理HTTP请求、数据库交互等。Linux是常见的服务器操作系统。
  • 执行构建工具和任务: 前端开发中常用的构建工具(如Webpack、Gulp、Parcel)、包管理器(npm、yarn、pnpm)以及各种自动化脚本都依赖于Node.js环境。
  • 运行命令行工具: 许多开发者工具和系统管理脚本是使用Node.js编写的,需要在Linux终端中执行。
  • 开发和测试环境: 在与生产环境相似的Linux系统上进行开发和测试,可以减少因环境差异导致的问题。


为什么需要选择特定的安装方法或版本?

Linux发行版自带的软件仓库通常包含Node.js,但版本可能不是最新的,或者你可能需要在同一台机器上管理多个Node.js版本以兼容不同的项目需求。这就是为什么会有多种安装方法,每种方法都有其适用场景。

Node.js可以安装在哪里?

Node.js的安装位置取决于你使用的安装方法:

  • 系统路径: 如果通过发行版的包管理器或NodeSource官方仓库安装,Node.js及其关联的npm包管理器通常会被安装到系统的标准可执行文件路径下,例如 /usr/bin/node/usr/bin/npm,或者 /usr/local/bin/node/usr/local/bin/npm。这意味着所有用户都可以直接在终端中调用 nodenpm 命令。
  • 用户主目录: 如果使用Node Version Manager (NVM) 这样的工具安装,Node.js的各个版本通常会安装在用户的家目录下的一个特定目录中,例如 ~/.nvm/versions/node/。这种方式安装的版本只对安装它的用户可见(除非进行额外配置),并且NVM负责管理和切换当前激活的版本。

安装Node.js需要多少空间?

Node.js运行时环境本身以及npm包管理器占用的磁盘空间相对较小。一个标准的Node.js安装(包括npm)通常需要几十MB到一百多MB的空间。

然而,你在使用Node.js进行开发时,通过npm安装的项目依赖(node_modules 目录)可能会占用大量空间,尤其是对于大型项目。但这部分空间占用与Node.js本身的安装大小是分开计算的。因此,安装Node.js本身并不会占用太多系统资源。

如何/怎么在Linux上安装Node.js?详细方法

在Linux上安装Node.js有多种途径,选择哪种方法取决于你的需求(是否需要最新版本、是否需要管理多个版本等)。下面介绍几种常见且推荐的方法:

方法一:使用发行版自带的包管理器(适用于快速安装,版本可能较旧)

这是最简单的方法,但缺点是仓库中的Node.js版本往往不是最新的稳定版。

适用于Debian/Ubuntu系统 (使用apt)

首先更新你的包索引,然后安装Node.js。npm包管理器通常会作为Node.js的依赖一起安装。

sudo apt update
sudo apt install nodejs npm

安装完成后,可以通过以下命令检查版本:

node -v
npm -v

请注意,通过apt安装的nodejs可执行文件在某些旧的Ubuntu版本中可能被称为 nodejs 而不是 node。如果 node -v 不工作,可以尝试 nodejs -v。不过,新版本中通常已经修复了这个问题,直接使用 node 即可。

适用于RHEL/CentOS/Fedora系统 (使用yum或dnf)

对于较新的Fedora或CentOS Stream/RHEL 8+,推荐使用 dnf;对于较旧的CentOS/RHEL 7及以前版本,使用 yum

使用dnf:

sudo dnf install nodejs

使用yum:

sudo yum install nodejs

同样,安装后检查版本:

node -v
npm -v

方法二:使用NodeSource官方APT/YUM仓库(适用于获取较新稳定版)

NodeSource维护着最新的Node.js版本的官方仓库,通过添加这些仓库,你可以使用包管理器安装到比发行版默认仓库更新的Node.js版本。

首先,你需要确定你想安装哪个主要版本的Node.js(例如 18.x, 20.x)。访问 NodeSource GitHub 页面可以找到对应版本的安装脚本。

适用于Debian/Ubuntu系统 (使用apt)

以下以安装Node.js 20.x版本为例。首先下载并运行NodeSource提供的安装脚本:

curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -

这个脚本会帮你添加NodeSource的APT仓库和签名密钥。脚本执行完毕后,你就可以像平常一样使用apt安装nodejs了:

sudo apt install -y nodejs

NodeSource仓库安装的包名称就是 nodejs,并且它已经包含了npm。

适用于RHEL/CentOS/Fedora系统 (使用yum或dnf)

同样以安装Node.js 20.x版本为例。下载并运行相应的脚本:

使用dnf:

curl -fsSL https://rpm.nodesource.com/setup_20.x | sudo -E bash -
sudo dnf install -y nodejs

使用yum:

curl -fsSL https://rpm.nodesource.com/setup_20.x | sudo -E bash -
sudo yum install -y nodejs

安装后检查版本:

node -v
npm -v

方法三:使用Node Version Manager (NVM)(适用于管理多个版本和开发环境)

NVM 是一个非常流行的Node.js版本管理器。它允许你在同一台机器上安装和切换多个Node.js版本,对于需要同时维护多个使用不同Node.js版本的项目的开发者来说非常有用。

  1. 安装NVM:

    打开终端,使用curl或wget下载并运行安装脚本。通常推荐使用官方GitHub页面上提供的最新安装命令。

    使用curl:

    curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash

    使用wget:

    wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash

    (请注意,v0.39.5 是当前版本号,你可能需要查看 NVM 的 GitHub 页面获取最新版本号替换)

    安装脚本会将nvm克隆到用户主目录下的 ~/.nvm 目录,并在你的shell配置文件(如 ~/.bashrc, ~/.zshrc, ~/.profile)中添加相应的加载命令。

    安装完成后,你需要关闭并重新打开终端,或者运行以下命令使配置生效:

    source ~/.bashrc (或其他对应的shell配置文件)

  2. 验证NVM安装:

    在新的终端中,运行:

    nvm --version

    如果显示版本号,说明NVM安装成功。

  3. 列出可用的Node.js版本:

    可以查看可以安装的远程版本列表:

    nvm ls-remote

  4. 安装Node.js:

    安装指定的Node.js版本。例如,安装最新的LTS (长期支持) 版本:

    nvm install --lts

    安装特定的版本,例如 20.11.0:

    nvm install 20.11.0

    NVM会自动安装对应版本的Node.js和npm。

  5. 使用指定的Node.js版本:

    列出已安装的版本:

    nvm ls

    切换到某个版本(当前终端会话有效):

    nvm use 20.11.0

    设置某个版本为默认版本(新开终端时自动使用):

    nvm alias default 20.11.0

    或者直接设置LTS版本为默认:

    nvm alias default --lts

  6. 验证Node.js安装:

    切换到目标版本后,检查node和npm的版本:

    node -v
    npm -v

方法四:从二进制文件安装(适用于特定场景或没有管理员权限)

Node.js官方网站提供预编译的二进制文件包。你可以下载、解压,然后手动将其路径添加到系统的PATH环境变量中。这种方法比较灵活,不需要管理员权限(如果你安装到用户目录下),但需要手动管理更新和路径。

  1. 下载二进制文件:

    访问 Node.js官方下载页面,找到适用于Linux的二进制文件(通常是 .tar.xz 格式)。选择你需要的版本和对应的系统架构(x64 是最常见的)。

    例如,使用curl下载LTS版本:

    curl -O https://nodejs.org/dist/v20.11.0/node-v20.11.0-linux-x64.tar.xz

    (请替换为你想下载的实际版本号和文件名)

  2. 解压文件:

    将下载的文件解压到你想安装的目录。例如,解压到用户主目录下的 opt 目录:

    mkdir -p ~/opt/nodejs
    tar -xJf node-v20.11.0-linux-x64.tar.xz -C ~/opt/nodejs --strip-components=1

  3. 添加到PATH环境变量:

    编辑你的shell配置文件(如 ~/.bashrc, ~/.zshrc),在文件末尾添加一行,将Node.js的bin目录添加到PATH中:

    echo 'export PATH="$HOME/opt/nodejs/bin:$PATH"' >> ~/.bashrc

  4. 使配置生效:

    关闭并重新打开终端,或者运行:

    source ~/.bashrc

  5. 验证安装:

    node -v
    npm -v

方法五:从源代码编译安装(不推荐,除非有特定需求)

从源代码编译安装Node.js是最灵活但最复杂的方法,通常只在需要对Node.js本身进行修改、调试或者在特定硬件/系统上进行优化时才会使用。这需要安装编译工具链和相关依赖库。对于大多数用户来说,使用前几种方法会更简单快捷。

安装后的验证

无论你使用哪种方法安装Node.js,都应该验证安装是否成功以及安装的版本是否正确。在终端中运行以下命令:

node -v

这个命令会输出安装的Node.js的版本号,例如 v20.11.0

接着,验证npm包管理器:

npm -v

这会输出对应版本Node.js自带的npm版本号。

如果这两个命令都能正确输出版本号,并且版本号是你期望的,那么恭喜你,Node.js已经在你的Linux系统上成功安装并配置好了!

总结与选择建议

针对不同的需求,你可以选择最合适的安装方法:

  • 如果你只是想快速尝试Node.js或部署一个对版本要求不严格的应用: 使用发行版自带的包管理器是最快的。
  • 如果你需要安装某个较新或特定的稳定版本,并且希望通过包管理器进行系统级安装: 优先考虑使用NodeSource官方仓库。
  • 如果你是开发者,需要在不同的项目中使用不同版本的Node.js,或者希望灵活地管理和切换版本: 强烈推荐使用NVM。这是最灵活且方便开发者使用的方法。
  • 如果你需要在没有管理员权限的环境下安装,或者需要安装到非标准位置: 从二进制文件安装是一个可行的选择。
  • 如果你需要进行Node.js核心开发或在特殊环境下部署: 考虑从源代码编译安装(这通常需要更深入的了解)。

选择合适的方法,按照步骤操作,你就可以顺利地在Linux系统上搭建起Node.js环境,开始你的开发或部署工作了。

linux安装nodejs