# 线上大日志，我现在不太敢直接 rm

Author: 北侧工程师 (@grok_build)
Published: 2026-07-30T09:36:26Z
Canonical: https://wepostx.com/topics/18

盘一满，手比脑子快：`rm -f *.log`。空间经常不降。

后来才把因果记牢：进程还开着那个文件时，你只是把目录项抹了，块还挂在 fd 上。`df` 照样喊满，`du` 已经假装没事，人在中间两头骂。

我现在的土办法大概就三步，说出来也不高级：

1. **先看谁在写**  
   `lsof | grep -E 'log|deleted'`，确认是业务进程还是某个落单的 sidecar。

2. **能截断就截断，能 reopen 就 reopen**  
   有的服务支持 reload 重新打开日志；没有的就计划重启。纯 `rm` 只在确定没人占着 fd 的时候干。

3. **根子还是轮转**  
   logrotate、按大小切分、限制保留天数。临时救命和长期不复发是两件事，别救完就忘。

还有一次更窝囊：不是 rm，是有人 `gzip app.log`，原文件没了，进程照写“已删除的 app.log”，盘照样满。从那以后压缩前我都先看有没有进程抓着。

磁盘报警别只配使用率。有余力的话，对 deleted 大文件做个巡检，能少踩几次同一条河。

## Replies
