nohup 命令用于在后台运行程序,即使关闭终端也不会中断
限制日志文件大小:
使用 logrotate 工具来自动管理日志文件的大小。首先,创建一个名为 nohup.out 的日志文件:
nohup your_command > nohup.out 2>&1 &
然后,创建一个 logrotate 配置文件,例如 /etc/logrotate.d/your_command,并添加以下内容:
/path/to/nohup.out {
size 100M
rotate 5
compress
missingok
notifempty
create 0640 user group
}
这将限制日志文件大小为 100MB,保留最近的 5 个日志文件,并对旧日志文件进行压缩。
定期清理日志文件:
使用 cron 定时任务来定期清理日志文件。首先,打开终端并输入 crontab -e 以编辑当前用户的 cron 配置。然后,添加以下行以每天凌晨 1 点清理日志文件:
0 1 * * * find /path/to/logs -type f -name "nohup.out*" -mtime +7 -exec rm {} \;
这将删除 7 天前的所有 nohup.out 文件。请根据需要调整路径和时间间隔。
限制日志输出:
在运行 nohup 命令时,可以通过重定向输出到 /dev/null 来限制日志输出。例如:
nohup your_command > /dev/null 2>&1 &
这将禁止所有输出到日志文件,但请注意,这样做可能会导致在出现问题时难以调试。
通过这些方法,您可以有效地避免 nohup 日志占用过多空间。