“CentOS 上 Node.js 报错”这个问题比较宽泛,我先给你最常见的几类原因和对应解决办法,你可以对照看看是哪一种。
报错示例
-bash: node: command not found
原因
解决
node -v
which node
安装(推荐用 NodeSource):
curl -fsSL https://rpm.nodesource.com/setup_18.x | bash -
yum install -y nodejs
报错示例
node: /lib64/libc.so.6: version `GLIBC_2.28' not found
原因
解决
nvm install 16
报错示例
EACCES: permission denied
原因
解决(推荐)
npm config set prefix ~/.npm-global
export PATH=~/.npm-global/bin:$PATH
报错示例
ETIMEDOUT
ECONNRESET
解决
npm config set registry https://registry.npmmirror.com
报错示例
排查
getenforce
临时关闭(测试用):
setenforce 0
现象
firewall-cmd --list-ports
firewall-cmd --add-port=3000/tcp --permanent
firewall-cmd --reload
常见错误
ExecStart 路径错示例:
[Service]
ExecStart=/usr/bin/node /opt/app/index.js
User=node
如果你方便,把完整报错信息贴出来,或者告诉我:
我可以直接帮你对症解决。