在 CentOS 下,nohup 默认会把输出写到 nohup.out,清空这个日志有几种常见、安全的方法,按使用场景给你说明。
> nohup.out
或
truncate -s 0 nohup.out
✅ 特点:
cat /dev/nullcat /dev/null > nohup.out
效果和方法一一样,也是安全的。
rm -f nohup.out
⚠️ 注意:
/dev/null(不想保留日志)启动时直接丢弃日志:
nohup your_command >/dev/null 2>&1 &
或只保留错误日志:
nohup your_command >/dev/null &
mv nohup.out nohup.out.2026-01-21
然后让程序继续写新的 nohup.out
(部分程序需要重启才会生效)
lsof -p PID | grep nohup
| 场景 | 推荐方式 |
|---|---|
| 清空日志但不停服务 | > nohup.out |
| 日志太大 | truncate -s 0 nohup.out |
| 完全不要日志 | 启动时重定向到 /dev/null |
| 生产环境 | 日志切割 + 定时清理 |
如果你愿意,可以把 启动命令 或 程序类型(Java / Python / Shell) 发我,我可以给你一个更合适的日志管理方案。