发布于2026-07-06 阅读(0)
扫一扫,手机访问
在 Linux 环境中运行 Node.js 程序时,一个常见的痛点就是:一关终端或断开 SSH 连接,程序就跟着停了。很多新手踩过这个坑,其实解决方案很简单——nohup 命令就是专门为这类场景设计的。它能让你的 Node.js 进程脱离终端会话,在后台安安稳稳地跑下去。下面把具体操作拆解成几个步骤,每一步都有实例,跟着做就能搞定。

打开终端,这步不必多说。
切换到你的 Node.js 项目目录。比如项目放在 /home/username/my-nodejs-app,直接执行:
cd /home/username/my-nodejs-app确保项目里有 package.json 文件,并且已经定义了一个启动脚本,通常叫 start。结构大致是这样:
{"name": "my-nodejs-app","version": "1.0.0","scripts": {"start": "node app.js"},"dependencies": {// ...}}
这里 app.js 就是你的主入口文件,按实际文件名调整就行。
关键一步:用 nohup 启动程序。把 换成你在 package.json 里定义的脚本名(默认就是 start)。下面的命令会把程序放到后台运行,同时把标准输出和错误输出都重定向到 nohup.out 文件里:
nohup npm run > nohup.out 2>&1 &
举个例子,如果你的脚本名就是 start,那么命令就是:
nohup npm run start > nohup.out 2>&1 &执行完上面这条命令之后,你就可以放心关闭终端或断开 SSH 连接了。程序会继续在后台运行,不会因为会话结束而终止。
如果想查看程序的实时输出,可以用 tail 命令监控 nohup.out 文件:
tail -f nohup.out如果需要手动停掉这个后台进程,先用 ps 加上 grep 找到对应的进程 ID(PID),然后 kill 掉。例如:
ps aux | grep app.jskill
把 替换成你查到的实际进程号即可。
以上就是用 nohup 让 Node.js 程序在后台持久化运行的完整流程。操作不复杂,但很实用,真正用起来之后就再也不怕终端一关程序就丢了。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8