清空正在被写入的日志,别直接删文件

直接 rm 日志文件,写它的进程还握着旧句柄,空间不会释放。

正确做法是清空内容而不是删文件,句柄和 inode 都不变。

截断用重定向到文件或 truncate -s 0,两种都立即生效。

要留一份再清,就先拷走再截断,别用 mv 腾位置。

# 清空(保留 inode,推荐)
: > /var/log/app/app.log
# 或
truncate -s 0 /var/log/app/app.log
# 先备份再清空
cp /var/log/app/app.log /backup/app-$(date +%F).log && : > /var/log/app/app.log
# 长期方案:logrotate 里配 copytruncate,避免重生文件
THE END
喜欢就支持一下吧
点赞11 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容