将Node.js安装在Raspberry Pi 2上

最近,我需要在Raspberry Pi 2上安装node.js,但由于CPU是ARM且版本为v6(较旧),因此在网络上找到的相关信息很少,我非常困难。
为了减少其他人遇到相同问题的困扰,我决定在平日所受到帮助很多的Qiita上进行首次投稿。

首先,安装Node.js到树莓派可以有以下几种方法。

方法備考/個人的な感想公式スクリプトARMv7, ARMv8(RaspberryPi3以降)が対象バイナリをダウンロード公式がコンパイルしたバイナリを利用nvm却ってややこしいような?apt一番手軽に見えて、実は一番厄介らしい

我尝试了很多种方法,但是apt命令运行不顺利,而对于对Node.js不熟悉的我来说,nvm也很难理解…
最终我认为在RaspberryPi2或zero上下载二进制文件是最好的方法,以下是总结的文章。

背景 –
上下文

从一开始就可能会问:“树莓派4已经发布了多少年了吧?”大约四年前,在一无所知的时候,我误买了一个树莓派2(笑),但后来发现它的电流消耗很低,自那以后,它在我们家被充分利用到了极限。

DSCN3003.JPG

环境

设备型号:树莓派 B+ 1.2 版(armv6l)
(执行 cat /proc/cpuinfo | grep Model 命令的输出结果)

操作系统:Raspbian GNU/Linux 10(buster)
版本:10
(摘自 lsb_release -a 的结果)

选择Node.js的版本

我首先在官方网站上查找了对ARMv6兼容的Node.js版本。对于每个主要版本,我点击了“下载”并确认了是否有“linux-armv6l”的标识(链接)。

 

听说v11系列似乎是最后一个与ARMv6兼容的版本,但由于没有任何长期支持版本,我决定选择v10系列最后的10.24.1版本,感觉还行。

顺便提一下,树莓派的ARM版本似乎可以通过以下命令(无论哪个都可以)进行确认。

# [ terminal ]
cat /proc/version
uname -a

安装

从下载到安装的步骤。
请在主目录(例如/home/pi)中执行以下操作。

# [ terminal ]
# ダウンロード URLは先程のサイトで調べてコピーします。
wget https://nodejs.org/download/release/v10.24.1/node-v10.24.1-linux-armv6l.tar.xz

# 展開
tar xJvf node-v10.24.1-linux-armv6l.tar.xz

# 展開されたファイルを全てコピー
sudo cp -r node-v10.24.1-linux-armv6l/* /usr/local/

# 下記コマンドが成功したらOK
node -v
npm -v

# 不要なファイルを削除しておく(任意)
rm node-v10.24.1-linux-armv6l.tar.xz
rm -r node-v10.24.1-linux-armv6l/

补充1:安装目录结构应该如下所示。我参考了上述的“官方脚本”安装情况。

目标目录/bin
├ node
├ npm

选择将安装位置设置为/usr/local/的原因是,它是在上述“官方脚本”中指定的安装位置,并且/usr/local/bin已经预先注册在环境变量PATH中,所以这是方便的。

参考:每种方式的安装位置

nodeの配置先参考元/usr/local/bin/公式スクリプト~/.nvm/versions/node/{ver}/bin/nvmでのインストール/usr/bin/aptでのインストール

在树莓派启动时持续运行

我以为我成功地按照上述步骤安装了!然而这种喜悦很快就消失了,因为在树莓派启动时,我想执行 forever start app.js,但是这让我遇到了一些麻烦…

我想要做成这样的感觉。

# crontab -e
@reboot forever start /home/pi/sample/app.js

如果在~/.profile中不起作用,也无法将其转化为systemd服务…
当我陷入困惑时,我在网上找到了一个建议,建议使用systemd直接运行app.js,而不是在systemd上使用forever start app.js,所以我尝试了一下。

以下是Unit文件的示例。

# /etc/systemd/system/foreversample.service
[Unit]
Description=sample service for Node.js forever

[Service]
Type=simple
User=pi
ExecStart=node /home/pi/sample/app.js

[Install]
WantedBy=multi-user.target

最后只需执行和设置自动启动。

#[ terminal ]
sudo systemctl start foreversample
sudo systemctl enable foreversample

我终于成功地使它正常运转了!

公式脚本

我打算在这里备忘录式地留下一种使用官方脚本的方法。我已经成功在RaspberryPi3B+上进行了安装。

#[ terminal ]
curl -sL https://deb.nodesource.com/setup_18.x | bash -
$ sudo apt install -y nodejs

GitHub官方网站

 

最后

通过查看网络上的信息,我们可以发现安装Node.js到Raspberry Pi上似乎让很多人感到困难。虽然以前一直从Qiita的文章中获得帮助,但我希望这篇文章对有此困扰的人能有所帮助。

请参考以下网站

使用公式二进制文件安装Node.js

 

使用公式脚本安装Node.js在Node.js官方脚本中使用

 

启动时运行 forever

 

广告
将在 10 秒后关闭
bannerAds