Linux磁盘空间如何排查_标准流程剖析适用于全部场景【指导】
发布时间 - 2025-12-13 00:00:00 点击率:次Linux磁盘空间排查四步法:先用df -h定位高危分区,再用du -sh *逐层下钻找大目录,接着用lsof +L1检查已删仍被占用文件,最后用find专项扫描隐藏、大、稀疏及多硬链接文件。
排查Linux磁盘空间问题,核心是“定位谁占了空间、为什么占、怎么清理”,不靠猜,靠逐层缩小范围。以下流程适用于物理机、虚拟机、容器宿主机、云服务器等全部场景,已验证多年稳定有效。
第一步:确认哪个分区爆满
用 df -h 看整体使用率,重点关注 Use% 列超过85%的挂载点(如 /、/home、/var)。注意看 Mounted on 列——别只盯着 /dev/sda1,要结合挂载路径判断实际影响范围。若看到 100% 但系统还能操作,可能是已删除文件仍被进程占用(见第三步)。
第二步:进入高危分区,找大目录
切换到对应挂载点(如 cd /),运行:
du -sh * 2>/dev/null | sort -hr | head -20
说明:
• du -sh * 统计当前层各目录大小(-s 合并子项,-h 可读)
• 2>/dev/null 屏蔽权限不足报错(避免干扰排序)
• sort -hr 按人类可读格式逆序排(G > M > K)
• head -20 只看前20个最大项
常见高危目录:/var/log、/var/lib/docker、/home、/tmp、/usr/local。找到最大目录后,cd 进去重复执行该命令,逐层下钻。
第三步:检查被删除但仍被占用的空间(隐藏空间)
执行:
lsof +L1 或 lsof | grep deleted
若输出非空,说明有进程正打开已被 rm 删除的文件,其空间不会释放。典型场景:
• 日志轮转未重启服务(如 nginx、java 应用)
• 长期运行的守护进程持续写入已删日志文件
解决方法:
• 重启对应服务(最稳妥)
• 或用 kill -USR1 [pid] 触发日志重开(需程序支持,如 nginx)
• 极端情况可 kill 进程释放(评估业务影响)
第四步:查清“看不见”的大文件(隐藏、稀疏、硬链接)
有些文件 du 算不到,但真实占磁盘,需专项扫描:
• 查隐藏文件:du -sh .[a-zA-Z0-9]* 2>/dev/null | sort -hr | head -10
• 查大于100MB的普通文件:find /path -xdev -type f -size +100M -ls 2>/dev/null | sort -k7nr | head -10(-xdev 防跨分区)
• 查稀疏文件(如qcow2、docker overlay):find /path -xdev -type f -printf '%s %p\n
' | sort -nr | head -5(用 %s 显示实际磁盘占用,非逻辑大小)
• 检查硬链接混乱:find /path -xdev -links +100 -ls 2>/dev/null | head -5(过多硬链接可能掩盖真实归属)
基本上就这些。四步下来,99% 的磁盘满问题都能准确定位。不复杂但容易忽略细节——比如没加 -xdev 跨了 NFS 导致卡死,或忘了 2>/dev/null 让错误刷屏盖过关键结果。动手前先 df,收尾后记得 df 再确认。
# linux
# java
# docker
# nginx
# 云服务
# 虚拟机
# 解决方法
# 云服务器
# 为什么
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
,网页ppt怎么弄成自己的ppt?
Laravel如何自定义错误页面(404, 500)?(代码示例)
Microsoft Edge如何解决网页加载问题 Edge浏览器加载问题修复
如何基于云服务器快速搭建个人网站?
INTERNET浏览器怎样恢复关闭标签页_INTERNET浏览器标签恢复快捷键与方法【指南】
高端建站三要素:定制模板、企业官网与响应式设计优化
Laravel任务队列怎么用_Laravel Queues异步处理任务提升应用性能
详解Oracle修改字段类型方法总结
Laravel怎么生成二维码图片_Laravel集成Simple-QrCode扩展包与参数设置【实战】
Laravel如何使用Eloquent进行子查询
Laravel如何实现API速率限制?(Rate Limiting教程)
北京网站制作的公司有哪些,北京白云观官方网站?
Laravel如何安装使用Debugbar工具栏_Laravel性能调试与SQL监控插件【步骤】
Laravel怎么配置自定义表前缀_Laravel数据库迁移与Eloquent表名映射【步骤】
Laravel Blade模板引擎语法_Laravel Blade布局继承用法
Laravel的Blade指令怎么自定义_创建你自己的Laravel Blade Directives
C++用Dijkstra(迪杰斯特拉)算法求最短路径
Python进程池调度策略_任务分发说明【指导】
昵图网官网入口 昵图网素材平台官方入口
Laravel观察者模式如何使用_Laravel Model Observer配置
微信推文制作网站有哪些,怎么做微信推文,急?
Laravel Sail是什么_基于Docker的Laravel本地开发环境Sail入门
韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南
mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?
如何在宝塔面板中创建新站点?
ai格式如何转html_将AI设计稿转换为HTML页面流程【页面】
如何在HTML表单中获取用户输入并用JavaScript动态控制复利计算循环
如何挑选最适合建站的高性能VPS主机?
Laravel如何实现本地化和多语言支持_Laravel多语言配置与翻译文件管理
Laravel怎么实现前端Toast弹窗提示_Laravel Session闪存数据Flash传递给前端【方法】
Laravel如何使用Socialite实现第三方登录?(微信/GitHub示例)
详解jQuery中基本的动画方法
如何在搬瓦工VPS快速搭建网站?
Python文本处理实践_日志清洗解析【指导】
详解免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)
Laravel怎么使用Session存储数据_Laravel会话管理与自定义驱动配置【详解】
武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?
详解jQuery停止动画——stop()方法的使用
JavaScript如何实现路由_前端路由原理是什么
详解MySQL数据库的安装与密码配置
小视频制作网站有哪些,有什么看国内小视频的网站,求推荐?
JavaScript如何实现错误处理_try...catch如何捕获异常?
PHP怎么接收前端传的文件路径_处理文件路径参数接收方法【汇总】
今日头条微视频如何找选题 今日头条微视频找选题技巧【指南】
如何快速启动建站代理加盟业务?
公司网站制作需要多少钱,找人做公司网站需要多少钱?
Laravel怎么判断请求类型_Laravel Request isMethod用法
Android自定义控件实现温度旋转按钮效果
Laravel怎么集成Log日志记录_Laravel单文件与每日日志配置及自定义通道【详解】
企业网站制作这些问题要关注

