电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

linux下du和df结果不一致的原因及处理

5页
  • 卖家[上传人]:m****
  • 文档编号:71481286
  • 上传时间:2019-01-20
  • 文档格式:DOCX
  • 文档大小:16.43KB
  • / 5 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、linux下du和df结果不一致的原因及处理本实验结果是在RHEL6.4-64bit下得出1.原理介绍1 .1du的工作原理du命令会对待统计文件逐个调用fstat这个系统调用,获取文件大小。它的数据是基于文件获取的,所以有很大的灵活性,不一定非要针对一个分区,可以跨越多个分区操作。如果针对的目录中文件很多,du速度就会很慢了。1.2 df的工作原理df命令使用的事statfs这个系统调用,直接读取分区的超级块信息获取分区使用情况。它的数据是基于分区元数据的,所以只能针对整个分区。由于df直接读取超级块,所以运行速度不受文件多少影响。2.实验模拟常见的df和du不一致情况就是文件被删除的而进程句柄还在导致的问题。当一个文件被删除后,在文件系统目录中已经不可见了,所以du就不会再统计它了。然而如果此时还有运行的进程持有这个已经被删除了的文件的句柄,那么这个文件就不会真正在磁盘中被删除,分区超级块中的信息也就不会更改,这样df仍旧会统计这个被删除了的文件。首先查看磁盘和路径rootzhjk115 app#df -hFilesystem Size Used Avail Use% Mounte

      2、d on/dev/mapper/VolGroup-lv_root 45G 8.0G 35G 19% /tmpfs 4.0G 1.5G 2.5G 37% /dev/shm/dev/mapper/VolGroup-lv_app 255G42G 201G18% /app/dev/sda1 485M 38M 422M 9% /bootrootzhjk115 app#rootzhjk115 app#pwd/app用dd命令创建1G大学的文件rootzhjk115 app#ddif=/dev/zeroof=/app/test.isobs=1024kcount=10001000+0 records in1000+0 records out1048576000 bytes (1.0 GB) copied, 4.31891 s, 243 MB/s查看df和du结果,目前是一致的rootzhjk115 app#df -hFilesystem Size Used Avail Use% Mounted on/dev/mapper/VolGroup-lv_root 45G 8.0G 35G 19% /tmpfs

      3、 4.0G 1.5G 2.5G 37% /dev/shm/dev/mapper/VolGroup-lv_app 255G43G 200G 18% /app/dev/sda1 485M 38M 422M 9% /bootrootzhjk115 app#du -sh43G模拟进程在使用test.iso文件 www.f-1.ccrootzhjk115 app#tail -f test.iso &1 22349rootzhjk115 app#ps -ef |grep tailroot2234921633 28 09:56 pts/1 00:00:01tail -f test.isoroot 22353 21633 0 09:56 pts/1 00:00:00 grep tail删除test.iso文件,可以看出df和du的结果是不一致的rootzhjk115 app#rm -rf test.isorootzhjk115 app#df -hFilesystem Size Used Avail Use% Mounted on/dev/mapper/VolGroup-lv_root 45G 8.0G

      4、 35G 19% /tmpfs 4.0G 1.5G 2.5G 37% /dev/shm/dev/mapper/VolGroup-lv_app 255G43G 200G 18% /app/dev/sda1 485M 38M 422M 9% /bootrootzhjk115 app#du -sh42G用lsof查看哪个进程在使用/app/test.isorootzhjk115 app#lsof |grep test.isotail 22349 root 3r REG 253,2 1048576000 12 /app/test.iso手动kill占有test.iso文件的进程,此时,du和df的结果一致rootzhjk115 app#kill -9 223491+ Killed tail -f test.isorootzhjk115 app#du -sh42Grootzhjk115 app#df -hFilesystem Size Used Avail Use% Mounted on/dev/mapper/VolGroup-lv_root 45G 8.0G 35G 19% /tmpfs 4.0G 1.5G 2.5G 37% /dev/shm/dev/mapper/VolGroup-lv_app 255G42G 201G 18% /app/dev/sda1 485M 38M 422M 9% /boot结论:本实验主要是针对Linux环境的使用,该问题是由于进程的文件句柄释放问题导致的,很多情况为清理完日志等文件是du显示为已释放空间,但df空间还在使用,此时可以通过echo(或者)代替rm来避免这种情况,同时也可以查看是哪个进程在使用,可以根据情况手动清理、重启应用或者等待释放。注:当oracle主机某些日志被清理后但df显示空间没有被释放也是同样的道理,一般来说等一段时间即可,否则需要重启数据库实例来释放空间。

      《linux下du和df结果不一致的原因及处理》由会员m****分享,可在线阅读,更多相关《linux下du和df结果不一致的原因及处理》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.