在 Debian(以及大多数 Linux 发行版)中,nohup 常用来让进程在用户退出登录后继续运行。关于 nohup 日志 的设置,主要有以下几种常见做法。
默认情况下:
nohup command &
nohup.out$HOME/nohup.outnohup command > /var/log/myapp.log 2>&1 &
说明:
>:重定向 stdout2>&1:将 stderr 也重定向到 stdout&:后台运行✅ 日志会写入 /var/log/myapp.log
nohup command > /var/log/myapp.out 2> /var/log/myapp.err &
如果你不想覆盖旧日志:
nohup command >> /var/log/myapp.log 2>&1 &
>> 表示追加写入
nohup command >> /var/log/myapp_$(date +%Y%m%d).log 2>&1 &
如果你完全不需要日志:
nohup command > /dev/null 2>&1 &
jobs
ps aux | grep command
tail -f /var/log/myapp.log
如果你在 Debian 上长期运行服务,建议使用:
systemd service(生产环境推荐)screen / tmuxsetsid例如 systemd 可自动管理日志(journalctl),比 nohup 更规范。
如果你愿意,可以告诉我:
我可以给你更合适的方案。