cd /data/ie/ieweb setsid node server.js > server.log 2>&1 & 查看一下 [root@CZ-ZWW-HJSMX-23 pm2]# ps -ef | grep node root 3573711 1 1 10:45 ? 00:00:02 node server.js ⬆️ 是问号就代表是后台启动 =======================配置开机自启====================== 1. 创建服务文件 vi /etc/systemd/system/ieweb.service 2. 写入内容(按你当前路径改) [Unit] Description=ieweb Node Service After=network.target [Service] Type=simple WorkingDirectory=/data/ie/ieweb ExecStart=/usr/local/node/bin/node server.js Restart=always RestartSec=5 User=root [Install] WantedBy=multi-user.target 3. 启动服务 systemctl start ieweb 4. 设置开机自启 systemctl enable ieweb 5. 查看状态 systemctl status ieweb 6. 查看日志 journalctl -u ieweb -f ===========================知识拓展======================== 👉 nohup:抗“挂断信号” 👉 setsid:直接“脱离终端” nohup node server.js & ✔ 本质行为: 忽略 SIGHUP(挂断信号) 输出默认重定向到 nohup.out ⚠️ 但注意一个关键点: 👉 它并没有让进程脱离终端! 只是: 进程还“挂在终端” 但不响应断开信号 setsid node server.js & ✔ 本质行为: 创建一个新的 会话(session) 进程变成: 没有控制终端 独立于当前 shell 👉 也就是说: ✅ 这个进程“从根上就不属于你这个 SSH 了”