如何在 Debian 9 上安装 Node.js

介绍

Node.js是一个用于通用编程的JavaScript平台,允许用户快速构建网络应用程序。

在本指南中,我们将向您展示如何在 Debian 9 服务器上开始使用 Node.js。

前提条件

本指南假定您正在使用 Debian 9. 在您开始之前,您应该有一个非根用户帐户,在您的系统上设置了 sudo 权限。

安装 Debian 的 Distro-Stable 版本

Debian 包含 Node.js 的版本在其默认存储库中。在写作时,这个版本是 4.8.2,将于 2018 年 4 月底到期,如果你想使用一个稳定的和足够的选项来尝试该语言,那么从存储库中安装可能会有意义。

要获得 Node.js 的分布式稳定版本,您可以使用apt包管理器。

1sudo apt update

然后从存储库中安装 Node.js 包:

1sudo apt install nodejs

如果存储库中的包适合您的需求,那么这就是您需要做的,以设置Node.js。

要检查在这些初步步骤后安装了哪个版本的 Node.js,请键入:

1nodejs -v

由于与另一个包的冲突,来自 Debian 存储库的可执行程序被称为nodejs而不是node

一旦你确定了从 Debian 存储库中安装了哪个 Node.js 版本,你就可以决定你是否想与不同的版本、包存或版本管理器一起工作。

使用 PPA 安装

要使用更新的 Node.js 版本,您可以添加由 NodeSource 维护的 PPA (个人包档案),这将包含比官方 Debian 存储库更新的 Node.js 版本,并允许您在 Node.js v4.x (较早的长期支持版本,将支持到 2018 年 4 月底), Node.js v6.x (支持到 2019 年 4 月), Node.js v8.x (当前的 LTS 版本,支持到 2019 年 12 月) 和 Node.js v10.x (最新的版本,支持到 2021 年 4 月) 之间进行选择。

让我们先更新本地包索引并安装‘curl’,您将使用它来访问PPA:

1sudo apt update
2sudo apt install curl

接下来,让我们安装PPA以获取其内容。从您的主目录中,使用‘curl’来获取您喜爱的版本的安装脚本,确保用您喜爱的版本字符串(如果不同)取代‘10.x’:

1cd ~
2curl -sL https://deb.nodesource.com/setup_10.x -o nodesource_setup.sh

您可以使用「nano」或 您的偏好文本编辑器检查本脚本的内容:

1nano nodesource_setup.sh

sudo下运行脚本:

1sudo bash nodesource_setup.sh

PPA 将被添加到您的配置中,您的本地包缓存将自动更新. 运行安装脚本后,您可以以上面的方式安装 Node.js 包:

1sudo apt install nodejs

要检查在这些初步步骤后安装了哪个版本的 Node.js,请键入:

1nodejs -v
1[secondary_label Output]
2v10.9.0

nodejs包包含nodejs二进制和npm,因此您不需要单独安装npm

npm 使用您的主目录中的配置文件来跟踪更新. 它将创建在您首次运行 npm. 执行此命令以验证 npm 已安装并创建配置文件:

1npm -v
1[secondary_label Output]
26.2.0

为了使某些npm包工作(例如需要编译源代码的包),您需要安装build-essential包:

1sudo apt install build-essential

您现在有必要的工具来处理需要编译源代码的npm包。

使用 NVM 安装

通过apt来安装 Node.js 的替代方法是使用一个名为nvm的工具,即Node.js 版本管理器。而不是在操作系统级别上工作,nvm在您的主目录中以独立目录级别工作,这意味着您可以安装多个 Node.js 版本,而不会影响整个系统。

通过nvm来控制您的环境,您可以访问最新版本的 Node.js,并保留和管理以前的版本,但它与apt不同,并且您使用它来管理的 Node.js 版本与您使用apt来管理的版本不同。

要从 项目的GitHub页面下载nvm安装脚本,您可以使用curl

1curl -sL https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh -o install_nvm.sh

检查nano的安装脚本:

1nano install_nvm.sh

运行bash的脚本:

1bash install_nvm.sh

它会将软件安装在您的主目录的子目录中,在 ~/.nvm. 它还会添加必要的行到您的 ~/.profile 文件中,以便使用该文件。

要访问nvm功能,您需要退出并再次登录,或者源~/.profile文件,以便您的当前会话知道这些更改:

1source ~/.profile

安装了nvm,您可以安装单独的 Node.js 版本. 有关可用的 Node.js 版本的信息,请键入:

1nvm ls-remote
 1[secondary_label Output]
 2...
 3         v8.11.1   (Latest LTS: Carbon)
 4         v9.0.0
 5         v9.1.0
 6         v9.2.0
 7         v9.2.1
 8         v9.3.0
 9         v9.4.0
10         v9.5.0
11         v9.6.0
12         v9.6.1
13         v9.7.0
14         v9.7.1
15         v9.8.0
16         v9.9.0
17        v9.10.0
18        v9.10.1
19        v9.11.0
20        v9.11.1
21        v10.0.0  
22        v10.1.0
23        v10.2.0
24        v10.2.1
25        v10.3.0
26        v10.4.0
27        v10.4.1
28        v10.5.0
29        v10.6.0
30        v10.7.0
31        v10.8.0
32        v10.9.0

正如你所看到的,本文写作时的当前LTS版本是v8.11.1。

1nvm install 8.11.1

通常,nvm会切换到使用最近安装的版本,您可以通过键入nvm来使用您刚刚下载的版本:

1nvm use 8.11.1

当您使用nvm安装 Node.js 时,可执行的版本称为node

1node -v
1[secondary_label Output]
2v8.11.1

如果您有多个 Node.js 版本,您可以通过键入来查看安装的内容:

1nvm ls

如果您想默认使用其中一个版本,请键入:

1nvm alias default 8.11.1

此版本将在新会话启动时自动选择,您还可以用以下字符引用:

1nvm use default

每个版本的 Node.js 都将跟踪其自己的包,并有npm可用来管理这些包。

您还可以将npm安装包放到 Node.js 项目的./node_modules目录中,使用以下语法来安装express模块:

1npm install express

如果您想在全球范围内安装该模块,使其可用于使用相同版本的 Node.js 的其他项目,则可以添加-g标志:

1npm install -g express

这将安装该包在:

1~/.nvm/versions/node/node_version/lib/node_modules/express

全球安装模块将允许您从命令行运行命令,但您必须将该包链接到您的本地领域,以要求它从程序中执行:

1npm link express

您可以通过键入为您提供的 nvm 选项的更多信息:

1nvm help

如何删除 Node.js

您可以使用aptnvm来卸载 Node.js,取决于您想要瞄准的版本. 要从存储库或PPA中删除安装的版本,您需要在系统级别使用apt实用程序。

若要删除这些版本,请键入以下内容:

1sudo apt remove nodejs

此命令会删除包和配置文件。

若要卸载您已使用nvm启用的 Node.js 版本,请先确定您想要移除的版本是否是当前活跃的版本:

1nvm current

如果您瞄准的版本不是当前活跃的版本,您可以运行:

1nvm uninstall node_version

此命令会卸载选定的 Node.js 版本。

如果您想要删除的版本 **是目前的活跃版本,您必须先禁用nvm才能启用更改:

1nvm deactivate

您现在可以使用上面的卸载命令卸载当前版本,该命令将删除与目标版本的 Node.js 相关的所有文件,除了可用于重新安装的缓存文件。

结论

您可以在 Debian 9 服务器上使用 Node.js 的几种方法。您的情况将决定哪种方法最适合您的需求。 虽然在 Debian 存储库中使用包装版本是实验的选择,但从 PPA 安装并使用npmnvm提供额外的灵活性。

Published At
Categories with 技术
Tagged with
comments powered by Disqus