df -T 和 du 统计的内存不一致

1、问题原因

客户反馈,df -T 查看到挂载到flash文件的emmc使用了6G左右,但是在flash下看到du -h 只用了2G左右,客户疑问,还有4G去哪儿了?

2、问题怀疑方向

1、怀疑启动阶段emmc内部有坏块,mount的时候只看到了部分文件信息,准备查看dmesg

2、怀疑有删除部分东西,但是没有sync到真正的存储介质,以至于df -T 看到还是有很多被占用

3、实际解决问题

午觉睡完,查看了一个博客:https://help.aliyun.com/document_detail/96228.html

敏锐发觉曾遇到类似问题:即rm -rf  文件,内存不一定真正被释放(需要保障删除的文件没有任何进程在使用,文件才能真正被删除掉)。

咨询客户:环境启动到当前做过什么,客户感知删除了一个core文件约4G,发现客户有窗口在gdb 解析core,gdb 且未退出。

实际解决:客户gdb core文件后,删除core文件,du 看到内存只用了2G,实际上由于gdb未退出,core文件并未真正删除,df -T看到仍为使用6G,gdb退出后,df du统计一致。

posted on 2023-02-01 14:09  红旗kernel  阅读(36)  评论(0编辑  收藏  举报

导航