Debian 上 Node.js 报错的原因非常多,“报错”本身不是问题,关键看具体是什么错误。下面我先给你总结Debian 上最常见的一些 Node.js 报错原因和解决办法,你可以对照看看是不是其中一类。
Debian 自带的 Node.js 通常很旧(比如 Debian 11 是 Node 12,Debian 12 是 Node 18)。
典型报错
SyntaxError: Unexpected token '??'
Cannot use import statement outside a module
✅ 解决:
不要用 apt install nodejs
# 用 NodeSource 安装新版
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo bash -
sudo apt install -y nodejs
报错
bash: node: command not found
✅ 检查:
which node
node -v
可能原因:
报错
npm ERR! Error: EACCES: permission denied
✅ 解决(推荐):
mkdir ~/.npm-global
npm config set prefix ~/.npm-global
export PATH=~/.npm-global/bin:$PATH
❌ 不要用 sudo npm install -g
报错
version `GLIBC_2.28' not found
常见于:
✅ 解决:
报错
Cannot find module 'express'
✅ 解决:
rm -rf node_modules package-lock.json
npm install
报错
Error: listen EADDRINUSE
✅ 端口被占用:
sudo lsof -i:3000
请把下面信息贴出来(越全越好):
cat /etc/os-release
node -v
npm -v
如果你愿意,可以直接把报错原文贴出来,我可以直接告诉你是哪一行、为什么、怎么改。