当前位置: 首页 > news >正文

关于linux磁盘告警问题

案例:我们在执行df命令时,查看到磁盘利用率很高,但是到相对应的目录执行du -sh *来找大文件时进行删除时,发现各个目录相加并不大,如下图:

        使用df命令查看到根(/)目录使用到33G,而du命令显示只使用了2.5G

        

分析:

        df命令:显示的是文件系统级别的磁盘空间使用情况,包括已用空间、可用空间以及挂载点等信息。通过df命令,可以得知各个分区的总空间、已用空间和剩余空间,从而了解磁盘的使用状况

        du命令:du更侧重于展示文件和目录级别的磁盘占用情况,只计算文件或目录占用的磁盘空间。这个命令通常用来查找占用空间大的文件或者目录,帮助我们定位可能的磁盘空间浪费问题

        

        当出现上述的情况的时候,我们应该怀疑是否有文件删除了,导致du 命令查找时未找到该文件,但是打开的进程还是在占用该文件,此时磁盘空间并不会得到释放,从而导致:

        使用df命令查看磁盘使用率时,这些已删除未释放的文件会被统计到,而du只统计未删除的文件,从而导致两者的结果相关较大。

处理方法:

        使用 lsof 命令可以显示已删除的文件,将有问题的进程/服务重启,磁盘空间就会得到释放

        1.查看已删除但未释放的文件

        lsof | grep delete

       此时可以看到/var/log/test.log文件已经删除,但还在被tail命令占用,占用文件的进程ID可以看到是4163;

        在使用ls命令时,已经查看不到该文件了

         2.杀进程并验证

 

        将异常进程关闭后,使用df命令查看磁盘空间时显示结果正常。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Hadoop 客户端 FileSystem加载过程
  • 前端工具vscode 提交代码git操作
  • vue项目input框使用lodash的debounce防抖
  • 创建vue工程、Vue项目的目录结构、Vue项目-启动、API风格
  • 集成Vision Transformer 的概率模型改进了复杂的息肉分割
  • 几行代码使用Go语言对接第三方工具之集成gin、kite框架、通过原生不借助其他软件实现内网穿透工具
  • Make New 函数 ---golang
  • 第八篇【传奇开心果系列】Python微项目技术点案例示例:以微项目开发为案例,深度解读Dearpygui 编写图形化界面桌面程序的优势
  • FreeRTOS_事件组_学习笔记
  • Unidac连接Excel文件
  • Stream流的使用
  • Windows批处理命令和概念
  • php部分特性漏洞学习
  • 【设计模式】JAVA Design Patterns——Bridge(桥接模式)
  • 面试被问到不懂的东西,是直接说不懂还是坚持狡辩一下?
  • 分享一款快速APP功能测试工具
  • 【附node操作实例】redis简明入门系列—字符串类型
  • 10个最佳ES6特性 ES7与ES8的特性
  • 4月23日世界读书日 网络营销论坛推荐《正在爆发的营销革命》
  • JavaScript 一些 DOM 的知识点
  • overflow: hidden IE7无效
  • SAP云平台里Global Account和Sub Account的关系
  • spark本地环境的搭建到运行第一个spark程序
  • Twitter赢在开放,三年创造奇迹
  • Vue官网教程学习过程中值得记录的一些事情
  • webpack+react项目初体验——记录我的webpack环境配置
  • 表单中readonly的input等标签,禁止光标进入(focus)的几种方式
  • 对话:中国为什么有前途/ 写给中国的经济学
  • 翻译:Hystrix - How To Use
  • 浮现式设计
  • 应用生命周期终极 DevOps 工具包
  • ​字​节​一​面​
  • $emit传递多个参数_PPC和MIPS指令集下二进制代码中函数参数个数的识别方法
  • $NOIp2018$劝退记
  • (02)vite环境变量配置
  • (22)C#传智:复习,多态虚方法抽象类接口,静态类,String与StringBuilder,集合泛型List与Dictionary,文件类,结构与类的区别
  • (k8s)Kubernetes 从0到1容器编排之旅
  • (二)linux使用docker容器运行mysql
  • (附源码)spring boot球鞋文化交流论坛 毕业设计 141436
  • (附源码)ssm基于jsp的在线点餐系统 毕业设计 111016
  • (附源码)计算机毕业设计SSM疫情居家隔离服务系统
  • (切换多语言)vantUI+vue-i18n进行国际化配置及新增没有的语言包
  • (学习日记)2024.03.25:UCOSIII第二十二节:系统启动流程详解
  • (一)【Jmeter】JDK及Jmeter的安装部署及简单配置
  • (一)RocketMQ初步认识
  • (原+转)Ubuntu16.04软件中心闪退及wifi消失
  • (转)Java socket中关闭IO流后,发生什么事?(以关闭输出流为例) .
  • (转)ORM
  • (转)真正的中国天气api接口xml,json(求加精) ...
  • .NET Core SkiaSharp 替代 System.Drawing.Common 的一些用法
  • .Net Core webapi RestFul 统一接口数据返回格式
  • .net core开源商城系统源码,支持可视化布局小程序
  • .NET Framework、.NET Core 、 .NET 5、.NET 6和.NET 7 和.NET8 简介及区别
  • .NET开发不可不知、不可不用的辅助类(三)(报表导出---终结版)
  • .sh文件怎么运行_创建优化的Go镜像文件以及踩过的坑