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

Linux显示磁盘空间情况——df命令详解与实战

一、命令定位与核心功能

df(Disk Free)命令是Linux系统磁盘管理的核心工具,主要用于实时监控文件系统空间使用情况。通过该命令可获取以下关键数据:

  • 存储设备挂载点:文件系统挂载路径

  • 容量分配:总空间、已用空间、可用空间

  • 使用率分析:空间与索引节点(inode)使用百分比

  • 文件系统类型:ext4/xfs/btrfs等格式识别


二、参数分类与功能解析

1. 信息显示控制

参数功能说明推荐场景
-h人性化单位显示(自动换算)日常巡检
-H按1000进制换算单位兼容SI标准
-T显示文件系统类型存储格式分析
-i显示inode使用情况小文件存储诊断

2. 筛选过滤参数

参数功能说明组合示例
-t过滤指定文件系统类型df -t xfs
-x排除指定文件系统类型df -x tmpfs
-l仅显示本地文件系统排除网络存储

3. 数据刷新与格式

参数功能说明特殊用途
--sync强制同步后刷新数据获取最新状态
--total显示汇总统计行容量规划

三、典型应用场景演示

1. 全局磁盘空间概览

# 人性化显示所有挂载点(推荐)
df -h# 输出示例:
Filesystem      Size  Used Avail Use% Mounted on
/dev/nvme0n1p2  200G   45G  146G  24% /
tmpfs           3.9G     0  3.9G   0% /dev/shm

2. 指定文件系统分析

# 查看/boot分区使用情况
df -h /boot# 筛选ext4格式分区
df -t ext4 -h

3. inode使用监控

# 检查索引节点状态
df -i /var# 典型输出:
Filesystem     Inodes IUsed IFree IUse% Mounted on
/dev/sda1       65536  1424 64112    3% /var

4. 网络存储专项检查

# 排除临时文件系统
df -h -x tmpfs -x devtmpfs# 检查NFS挂载点
df -t nfs4

四、输出字段深度解析

字段描述关键指标
Filesystem存储设备路径或分区标识定位物理存储
Size总存储容量容量规划依据
Used已使用空间清理决策参考
Avail非root用户可用空间用户存储限制
Use%空间使用百分比预警阈值判断
Mounted on文件系统挂载路径应用关联分析

五、高级技巧与最佳实践

1. 自动化监控脚本

#!/bin/bash
# 磁盘空间超过80%预警
THRESHOLD=80
df -h | awk -v ALERT=$THRESHOLD '
NR>1 {gsub(/%/,"",$5)if ($5 >= ALERT) print "警告: " $1 " 使用率 " $5 "%"
}'

2. 存储趋势分析

# 按使用率排序分区
df -h --output=source,pcent,target | sort -k2 -nr# 输出示例:
Filesystem     Use% Mounted on
/dev/sda1       95% /data
/dev/nvme0n1p2  24% /

3. 容器环境适配

# 查看Docker容器存储使用
docker ps -q | xargs docker inspect --format='{{.GraphDriver.Data.Mountpoint}}' | xargs df -h

4. LVM存储分析

# 显示逻辑卷空间状态
df -h | grep -E '/dev/mapper|/dev/dm'

六、常见问题解决方案

1. 磁盘空间与inode耗尽

现象检测命令处理方案
"No space left"df -h清理大文件/扩容
"No inode left"df -i删除碎片小文件

2. 挂载点异常排查

# 查看未挂载的分区
lsblk -f | grep -v MOUNTPOINT# 检查挂载配置
cat /etc/fstab | grep -v '^#'
http://www.xdnf.cn/news/9329.html

相关文章:

  • Teigha应用——解析CAD文件(DWG格式)Teigha在CAD C#二次开发中的基本应用
  • 13. CSS定位与伪类/伪元素
  • 60.AI流式回答功能前端实现
  • 【Linux】shell脚本的常用命令
  • 2025年机动车授权签字人考试题库及答案
  • Spyglass:项目目录中的报告结构
  • 从SPDY到HTTP/2:网络协议的革新与未来
  • 华为认证中HCIA/HCIP/HCIE是什么等级?怎么考试?
  • 【NLP基础知识系列课程-Tokenizer的前世今生第三课】多模态世界中的 Tokenizer 策略
  • Leetcode 25. K 个一组翻转链表
  • 在 springboot3.x 使用 knife4j 以及常见报错汇总
  • 力扣面试150题--完全二叉树的节点个数
  • 当UI设计师遇上数字孪生:如何用设计思维重构工业流程?
  • 1998-2023年各地级市国内生产总值、地级市GDP数据(市辖区)
  • 依赖注入(DI)/控制反转(IoC) nodejs案例详解
  • 「提效」AI办公 | 实测,飞书扣子空间快速迭代
  • 网络常识:网线和光纤的区别
  • SD卡+FATFS+Tinyjpeg图片解码显示 (STM32F103VET6通过CubeMX快速建立工程)
  • NAT的映射类型详解:从基础到高级应用
  • 上海市计算机学会竞赛平台2025年5月月赛丙组稳定区间
  • 计算机视觉---YOLOv3
  • 5.0.7 TabControl的使用
  • 如何创建一个流程图/思维导图
  • 3分钟学会跨浏览器富文本编辑器开发:精准光标定位+内容插入(附完整代码)
  • MATLAB使用多个扇形颜色变化表示空间一个点的多种数值
  • STM32CubeMX,arm-none-eabi-gcc简单试用
  • MybatisPlus - Interceptor(拦截器)的功能点
  • AWS创建github相关的角色
  • Debian 系统 Python 开发全解析:从环境搭建到项目实战
  • Conda:环境移植及更新1--使用conda-pack