温馨提示×

centos怎么重启nodejs

小樊
46
2026-08-03 12:27:28
栏目: 编程语言

CentOS 上重启 Node.js 的方式取决于你是如何运行 Node.js 的。下面按常见场景给你说明。


一、直接运行 Node.js(前台 / 后台)

1️⃣ 直接前台运行(如 node app.js

如果你是这样启动的:

node app.js

那么:

  • 停止Ctrl + C
  • 重启:重新执行
node app.js

2️⃣ 后台运行(如 nohup&

查看进程

ps -ef | grep node

杀掉进程

kill -9 进程ID

重新启动

nohup node app.js > app.log 2>&1 &

二、使用 PM2(✅ 推荐)

如果你用的是 PM2(生产环境最常用):

重启 Node.js

pm2 restart app_name

pm2 restart app.js

查看状态

pm2 list

停止 / 启动

pm2 stop app_name
pm2 start app_name

设置开机自启(CentOS 7+)

pm2 startup
pm2 save

三、使用 systemd(服务器标准方式)

1️⃣ 查看服务状态

systemctl status nodeapp

2️⃣ 重启 Node.js 服务

systemctl restart nodeapp

3️⃣ 停止 / 启动

systemctl stop nodeapp
systemctl start nodeapp

nodeapp 是你自己定义的 systemd 服务名


四、端口占用导致无法重启

如果重启时报错:

Error: listen EADDRINUSE: address already in use :::3000

杀掉占用端口的进程

lsof -i:3000
kill -9 PID

五、快速判断你属于哪种情况

你可以用这几条命令确认:

ps -ef | grep node
systemctl list-units | grep node
pm2 list

✅ 建议

  • 开发环境node app.js
  • 生产环境:✅ PM2systemd

如果你愿意,可以把你 启动 Node.js 的命令报错信息 发我,我可以直接帮你精确给出重启命令。

0