磁盘:两种「满了」和一种「du 找不到大头」

现象:/srv 写入报 No space left on device。依次点命令,走完 df -h → df -i → du → lsof +L1 → findmnt 的排查链。

deploy@server:/srv/app

df 与 du 不一致的三个正当理由

1. 已删除但进程仍打开的文件        du 看不见,df 算满  →  lsof +L1,重启进程释放
2. 有挂载点盖住了原目录            du 算的是盖住后的     →  findmnt 看层级
3. 文件系统为 root 预留了块         df 的 Size 不含预留   →  所以会出现 Avail 还有但 Use% 已 100

以上输出是真实命令结果的整理样本,用来观察字段含义;换一台发行版或版本,数值与顺序会变。