在Debian 9上安装Node.js的方法

news2024/9/17 8:27:01

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。

介绍

Node.js 是一个用于通用编程的 JavaScript 平台,允许用户快速构建网络应用程序。通过在前端和后端都使用 JavaScript,Node.js 使开发更加一致和集成。

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

先决条件

本指南假设您正在使用 Debian 9。在开始之前,您应该在系统上设置一个具有 sudo 权限的非根用户帐户。您可以按照 Debian 9 的初始服务器设置指南来了解如何设置。

在 Debian 上安装稳定版本

Debian 默认仓库中包含一个 Node.js 版本。在撰写本文时,该版本为 4.8.2,将于 2018 年 4 月底到达生命周期终点。如果您想使用一个稳定且足够的选项来尝试该语言,那么从仓库安装可能是有意义的。然而,建议在开发和生产用例中安装一个更新版本的 Node.js,可以使用 PPA。我们将在下一步讨论如何从 PPA 安装。

要获取 Debian 的稳定版本 Node.js,您可以使用 apt 软件包管理器。首先,刷新本地软件包索引:

sudo apt update

然后从仓库安装 Node.js 软件包:

sudo apt install nodejs

如果仓库中的软件包符合您的需求,那么这就是您设置 Node.js 所需做的一切。

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

nodejs -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:

sudo apt update
sudo apt install curl

接下来,让我们安装 PPA 以便访问其内容。从您的主目录中,使用 curl 检索您首选版本的安装脚本,确保将 10.x 替换为您首选的版本字符串(如果不同):

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

您可以使用 nano 或您首选的文本编辑器检查此脚本的内容:

nano nodesource_setup.sh

sudo 下运行脚本:

sudo bash nodesource_setup.sh

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

sudo apt install nodejs

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

nodejs -v
v10.9.0

nodejs 软件包包含 nodejs 二进制文件以及 npm,因此您无需单独安装 npm

npm 使用您的主目录中的配置文件来跟踪更新。第一次运行 npm 时将创建该文件。执行此命令以验证 npm 是否已安装并创建配置文件:

npm -v
6.2.0

为了使一些需要从源代码编译代码的 npm 包能够工作(例如那些需要编译代码的包),您需要安装 build-essential 软件包:

sudo apt install build-essential

现在您已经具备了使用需要从源代码编译代码的 npm 包所需的工具。

使用 NVM 安装

除了通过 apt 安装 Node.js 外,还可以使用一个名为 nvm 的工具,它代表 “Node.js Version Manager”。nvm 不是在操作系统级别工作,而是在您的主目录中的独立目录级别工作。这意味着您可以安装多个独立的 Node.js 版本,而不会影响整个系统。

使用 nvm 控制您的环境可以让您访问最新版本的 Node.js 并保留和管理先前的版本。但是,它是一个与 apt 不同的实用工具,您使用它管理的 Node.js 版本与您使用 apt 管理的版本是不同的。

要从项目的 GitHub 页面下载 nvm 安装脚本,您可以使用 curl。请注意,版本号可能与此处突出显示的版本号不同:

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

使用 nano 检查安装脚本:

nano install_nvm.sh

使用 bash 运行脚本:

bash install_nvm.sh

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

要访问 nvm 功能,您需要注销并重新登录,或者源化 ~/.profile 文件,以便您当前的会话知道这些更改:

source ~/.profile

安装了 nvm 后,您可以安装隔离的 Node.js 版本。要了解可用的 Node.js 版本信息,请键入:

nvm ls-remote


v8.11.1 (最新 LTS: Carbon)
v9.0.0
v9.1.0
v9.2.0
v9.2.1
v9.3.0
v9.4.0
v9.5.0
v9.6.0
v9.6.1
v9.7.0
v9.7.1
v9.8.0
v9.9.0
v9.10.0
v9.10.1
v9.11.0
v9.11.1
v10.0.0
v10.1.0
v10.2.0
v10.2.1
v10.3.0
v10.4.0
v10.4.1
v10.5.0
v10.6.0
v10.7.0
v10.8.0
v10.9.0


如您所见,此时的 LTS 版本是 v8.11.1。您可以通过键入以下命令来安装该版本:

```command
nvm install 8.11.1

通常,nvm 会切换到使用最近安装的版本。您可以告诉 nvm 使用您刚下载的版本,方法是键入:

nvm use 8.11.1

使用 nvm 安装 Node.js 时,可执行文件称为 node。您可以通过键入以下命令查看 shell 当前使用的版本:

node -v

v8.11.1

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

nvm ls

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

nvm alias default 8.11.1

当新会话生成时,将自动选择此版本。您还可以通过别名引用它,如下所示:

nvm use default

每个 Node.js 版本将跟踪其自己的软件包,并且具有可用于管理这些软件包的 npm

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

npm install express

如果您希望全局安装模块,使其可用于使用相同版本的 Node.js 的其他项目,可以添加 -g 标志:

npm install -g express

这将在以下位置安装软件包:

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

全局安装模块将允许您从命令行运行命令,但您必须将软件包链接到本地范围以便从程序内部引用它:

npm link express

您可以通过键入以下命令了解 nvm 提供给您的选项:

nvm help

卸载 Node.js

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

要删除这些版本中的任何一个,请输入以下命令:

sudo apt remove nodejs

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

要卸载您使用 nvm 启用的 Node.js 版本,请首先确定您要删除的版本是否为当前活动版本:

nvm current

如果您要删除的版本不是当前活动版本,可以运行:

nvm uninstall node_version

此命令将卸载所选的 Node.js 版本。

如果您要删除的版本当前活动版本,则必须先停用 nvm 以启用您的更改:

nvm deactivate

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

结论

在 Debian 9 服务器上运行 Node.js 有很多种方法。您的情况将决定上述哪种方法最适合您的需求。虽然在 Debian 存储库中使用打包版本是一个试验的选择,但从 PPA 安装并使用 npmnvm 提供了额外的灵活性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2116827.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C# Dotfuscator加密dll设置流程

按照以下步骤处理后,反编译基本只能看到函数名,看不到源代码 1.Input 2.Setting 3.Rename 4.Rename 5.Control Flow 6.String Encryption 7.Output

【stata】自写命令分享dynamic_est,一键生成dynamic effect

1. 命令简介 dynamic_est 是一个用于可视化动态效应(dynamic effect)的工具。它特别适用于事件研究(event study)或双重差分(Difference-in-Differences, DID)分析。通过一句命令即可展示动态效应&#xf…

EasyPlayer.js网页H5 Web js播放器能力合集

最近遇到一个需求,要求做一款播放器,发现能力上跟EasyPlayer.js基本一致,满足要求: 需求 功性能 分类 需求描述 功能 预览 分屏模式 单分屏(单屏/全屏) 多分屏(2*2) 多分屏…

JVM面试(七)G1垃圾收集器剖析

概述 上一章我们说了,G1收集器,它属于里程碑式的发展,开创了面向局部收集垃圾的概念。专门针对多核处理器以及大内存的机器。在JDK9中,更是呗指定为官方的GC收集器。满足高吞吐的通知满足GC的STW停顿时间尽可能的短。 虽然现在我…

恶意代码分析-Lab01-01

实验一 这个实验使用Lab01-01.exe和Lab01-01.d文件,使用本章描述的工具和技术来获取关于这些文件的信息。 问题: 将文件上传至 http:/www.VirusTotal.com/进行分析并查看报告。文件匹配到了已有的反病毒软件特征吗?这些文件是什么时候编译的?这两个文件中是否存在迹象说明它…

如何在docker容器中导入.sql文件

一、准备工作 确保容器运行: 首先确认包含 MySQL 服务的 Docker 容器正在运行。可以通过 docker ps 命令查看正在运行的容器列表。如果容器未运行,使用 docker start [container_id] 命令启动容器。 准备数据库文件: 将需要导入的数据库文件&…

VMware安装Ubuntu虚拟机

Ubuntu镜像下载 https://ubuntu.com/download/desktop 创建虚拟机 1.典型配置 2.稍后安装操作系统 3.选择操作系统,Linux,ubuntu64位 3.设置虚拟机名称和安装位置 4.磁盘大小,存储为单个文件 安装系统 1.选择镜像 2.开启虚拟机 2.安装Ub…

CTFHub技能树-Git泄漏-Log

目录 一、前提知识 1.git泄漏原理 ​编辑 2.git文件泄漏造成后果 3.利用方法 (1) GitHack是一个.git泄露利用脚本,通过泄露的.git文件夹下的文件,还原重建工程源代码。渗透测试人员、攻击者,可以进一步审计代码,挖掘&#x…

【重学 MySQL】十七、比较运算符的使用

【重学 MySQL】十七、比较运算符的使用 **等于&#xff08;&#xff09;**基本用法示例注意事项结论 **安全等于运算符&#xff08;<>&#xff09;****不等于&#xff08;<> 或 !&#xff09;**示例注意事项 **大于&#xff08;>&#xff09;、大于等于&#xf…

傅里叶级数,傅里叶变换

先读文章&#xff1a;傅里叶分析之掐死教程&#xff08;完整版&#xff09;更新于2014.06.06 - 知乎 (zhihu.com) 傅里叶级数 一、内容&#xff1a;每个周期性函数都可以表示为无穷多个不同频率的正弦函数的叠加。 二、公式&#xff1a; 三、从时域到频域所保留的三点信息&…

修改Anaconda中JupterLab的默认文件存储路径

安装好Anaconda后&#xff0c;使用JupterLab创建的文件会默认存储在C盘&#xff0c;每次打开业都是打开C盘&#xff0c;可以按照如下步骤修改默认存储路径 1.点击开始然后打开anconda prompt。 2.打开命令行输入 jupyter notebook --generate-config &#xff0c;点击回车&…

MySQL——表操作

目录 一、创建表 二、查看表 2.1 查看表中某成员的数据 2.2 查看整个表中的表成员 2.3 查看创建表时的句柄 三、修改表 alter 3.1 重命名 rename 3.2 新增一列 add 3.3 更改列属性 modify 3.4 更改列名称 change 3.5 删除某列 上一篇博客介绍了库的操作&#xff0c;…

零基础快速上手HarmonyOS ArkTS开发5---从简单的页面开始2---使用List组件构建列表、Grid组件构建网格布局

接着零基础快速上手HarmonyOS ArkTS开发4---从简单的页面开始继续往下学习页面布局的知识。最近发现之前学习这一章节的内容在官方已经被下了&#xff0c;替换成了另外一个案例了&#xff08;华为开发者学堂&#xff09;&#xff1a; 而且整个视频的风格也不一样了&#xff0c;…

DBeaver 24.0 高阶用法

DBeaver 24.0 高阶用法 文章目录 DBeaver 24.0 高阶用法DBeaver 介绍功能一、元数据搜索功能二、仪表盘显示功能三、ER图功能四、导出数据最后 DBeaver 介绍 DBeaver 确实是一款功能强大的通用数据库管理工具&#xff0c;适合所有需要以专业方式处理数据的用户。它不仅提供了直…

【笔记篇】Davinci Configurator BswM模块

目录 1 简介1.1 架构概览2 功能描述2.1 特性2.2 初始化2.3 状态机2.3.1 BSWM_INIT2.3.2 BSWM_WAIT_IMMEDIATE_REQUEST2.3.3 BSWM_MAIN_FUNCTION2.3.4 BSWM_MODE_ARBITRATION_AND_CONTROL2.3.5 BSWM_EMPTY_QUEUE2.3.6 BSWM_DEINIT2.4 模式管理2.4.1 即时模式处理2.4.2 强制即时模…

计算机毕业设计选题推荐-剧本杀创作与预约管理系统-Java/Python项目实战(亮点:数据可视化分析)

✨作者主页&#xff1a;IT研究室✨ 个人简介&#xff1a;曾从事计算机专业培训教学&#xff0c;擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Python…

maven配置文件常用模板

注释很详细&#xff0c;直接上代码 项目结构 内容 父项目 pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi…

系统架构师-ERP+集成

ERP 集成平台end&#xff1a;就懒得画新的页

快手的视频素材去哪找?快手视频素材在哪里找啊

要在快手这类短视频平台上脱颖而出&#xff0c;创意与剪辑技巧固然重要&#xff0c;但拥有高质量的视频素材同样关键。今天&#xff0c;我将推荐一些优秀的素材网站&#xff0c;它们能为你的快手视频增色不少。从动人的自然风景到日常的城市生活&#xff0c;这些网站提供的素材…

经济管理专业数据库介绍

本文介绍了四个经济管理专业数据库&#xff1a;国研网全文数据库、EPS数据平台、中经网、Emerald全文期刊库&#xff08;管理学&#xff09;。 一、国研网全文数据库 国研网是国务院发展研究中心主管、北京国研网信息有限公司承办的大型经济类专业网站。国研网教育版”是国研…