很多时候官方提供的库都版本比较低。
在我们运行一些编译的时候可能需要一些比较高版本的库了。
因此我们就没有办法直接使用 yum 或者 dnf 来进行安装。
这里需要注意兼容性问题。
在使用 snapd 安装后,将会在你的系统上划分一个分区,在不同的工具或者 CI 工具访问 npm 的时候可能会出现授权的错误。
因此还是不是非常建议使用 snapd 来安装,建议使用原生方式来安装。
虽然慢点,但是还是比较稳定。
解决方案
可以考虑使用 snapd 这个经常来进行安装。
官方网站的地址为: Install node on CentOS using the Snap Store | Snapcraft
如果你希望安装 14.17 版本的 NodeJs 使用他们提供的包就没错了。
首先你需要安装 snapd 服务,如果你的机器上没有安装的话,你需要运行下面的命令进行安装。
sudo yum install epel-release
sudo yum install snapd
sudo systemctl enable --now snapd.socket
sudo ln -s /var/lib/snapd/snap /snap
如果你已经安装过了,就直接安装 snapd 就行了。
snapd 是一个后台进程,需要一定的内存使用,如果你的机器内存太小,可能会导致启动进程启动失败。
服务器上的安装过程如上图。
如果你遇到了错误:
[root@devops-norctx-com www.packloopapis.com]# sudo snap install node --classic
error: cannot communicate with server: Post "http://localhost/v2/snaps/node": dial unix /run/snapd.socket: connect: no such file or directory
这是因为 snapd 这个进程没有起来,你需要手动启动下。
启动的命令为:
systemctl restart snapd
最后再运行命令:
sudo snap install node --classic
安装 NodeJS 就 OK 了。
在完成安装后,使用命令 node --version 来查看下当前的版本即可。
确定你的机器上安装了你需要的版本。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。