在文件头部创建空洞(hole)虽能释放磁盘空间,但对采集器极不友好:
- 文件签名改变:LoongCollector 为防止 inode 复用造成漏采,会以文件头部内容作为唯一性签名;创建空洞会改写头部,触发采集器误判为新文件。
- 数据完整性受损:空洞用 \0 替换原内容,会让历史日志丢失,且日志解析器很难处理。
- 文件系统碎片化:频繁打洞会导致文件系统碎片化,进一步影响读写性能。
推荐使用标准的 logrotate 轮转机制管理文件大小。如确实需要释放空间,应使用 fallocate 等更安全的接口替代 truncate/dd,并在消费端实现对异常日志的兼容。




