1. 版本兼容性问题(Node.js与系统、依赖不匹配)
nvm(Node Version Manager)在用户级安装和切换Node.js版本,避免影响系统全局环境。安装命令:curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash,使用命令:nvm install 14.21.3(指定版本)、nvm use 14.21.3(切换版本)。nvm install 12.22.12),或通过nvm alias default 12.22.12设置默认版本。2. 权限问题(安装/运行时报EACCES等错误)
/usr/lib/node_modules)需要root权限,普通用户无权访问。~/.nvm),无需root权限;若需全局安装模块,用npm install -g <package> --prefix=~/.npm-global,并在~/.bashrc中添加export PATH=~/.npm-global/bin:$PATH。sudo chown -R $(whoami) ~/.npm、sudo chown -R $(whoami) /usr/local/lib/node_modules。3. 环境变量未正确配置(命令找不到)
PATH环境变量中,导致node -v或npm命令无法识别。bin目录添加到PATH。例如,在~/.bashrc中添加:export PATH=/usr/local/nodejs/bin:$PATH(假设安装在/usr/local/nodejs),然后运行source ~/.bashrc生效。echo $PATH检查是否包含Node.js路径,或用which node确认命令位置。4. 依赖安装失败(如npm报“Cannot find module”)
npm config set registry https://registry.npmmirror.com),加速模块下载。npm install <module-name>安装缺失的模块;若为项目依赖,检查package.json中的版本要求,用npm install安装所有依赖。5. GLIBC兼容性问题(如“GLIBC_2.27 not found”)
docker run -it --name node-app -v /your/app:/app node:14 bash(使用Node.js 14镜像)。wget http://ftp.gnu.org/gnu/glibc/glibc-2.28.tar.gz),编译安装到/usr/local/glibc,并设置LD_LIBRARY_PATH环境变量。注意:升级GLIBC可能导致系统崩溃,需备份重要数据。6. 服务启动失败(如“Cannot start forever”)
PATH)包含所需路径。chmod -R 755 /your/app、chown -R $(whoami):$(whoami) /var/log/node-app)。forever logs、journalctl -u node-app)获取详细错误信息,针对性解决。