上一篇                     
               
			  Linux磁盘空间怎么查看
- Linux
- 2025-06-07
- 3603
 使用
 
 
df -h命令查看所有磁盘分区的剩余空间,
 du -sh [目录名]可查看指定目录占用的磁盘空间大小,
 lsblk命令能显示磁盘分区树状结构。
核心命令详解
df 命令:文件系统级空间概览
 
功能:显示磁盘分区的总空间、已用空间及剩余空间。
常用选项:
- -h:人性化显示单位(自动转换为KB、MB、GB)
- -T:显示文件系统类型(如ext4、xfs)
- --total:汇总所有分区的统计信息
示例:
df -hT
输出示例:
Filesystem     Type      Size  Used Avail Use% Mounted on
/dev/sda1      ext4       48G   22G   24G  48% /
tmpfs          tmpfs     1.8G     0  1.8G   0% /dev/shm适用场景:快速检查各挂载点的空间利用率,定位存储紧张的分区。
du 命令:目录级空间深度分析
 
功能:计算指定目录或文件的磁盘使用量。
关键选项:
- -h:人性化单位显示
- -s:仅显示总计(不递归子目录)
- --max-depth=N:限制递归深度
- -a:显示所有文件(包括隐藏文件)
示例:
# 查看当前目录总占用 du -sh # 分析/var/log下各子目录大小(深度1级) du -h --max-depth=1 /var/log
输出示例:

15G    /var/log/nginx
2.1G   /var/log/audit
17G    /var/log适用场景:排查大文件/目录,清理冗余数据。
lsblk 命令:块设备拓扑结构
 
功能:列出所有块设备(磁盘、分区)的层次关系及空间信息。
常用选项:
- -f:显示文件系统类型和UUID
- -o:自定义输出列(如NAME,SIZE,FSTYPE,MOUNTPOINT)
示例:
lsblk -f
输出示例:
NAME   FSTYPE LABEL  MOUNTPOINT
sda                    
├─sda1 ext4   root   /
└─sda2 swap   swap   [SWAP]适用场景:理清磁盘分区结构,确认未挂载空间。

高级工具与技巧
实时监控工具
-  ncdu:交互式磁盘分析器(需安装)sudo apt install ncdu # Debian/Ubuntu sudo yum install ncdu # CentOS/RHEL ncdu /home # 扫描/home目录 支持键盘导航:删除文件(d)、排序(s) 
 优势:直观可视化,直接操作文件。
-  baobab(GNOME用户):图形化磁盘分析器
 通过菜单启动或终端执行baobab。
特殊场景处理
- 查看挂载点空间限制: df -h /mnt/data # 指定挂载点路径 
- 排除网络存储(NFS): df -hTl # -l 仅显示本地文件系统 
注意事项与常见问题
-  单位混淆: - 命令默认以 1K=1024字节 计算(非1000字节),-h选项可避免误解。
 
- 命令默认以 1K=1024字节 计算(非1000字节),
-  权限影响:  - du分析系统目录需- sudo权限(如- /var)。
 
-  空间未释放: - 文件被进程占用时,df显示空间不足但du统计较小 → 重启服务或清理进程。
 
- 文件被进程占用时,
-  Inodes耗尽: - 小文件过多可能导致Inodes用尽(即使空间充足): df -i # 检查Inode使用率 
 
- 小文件过多可能导致Inodes用尽(即使空间充足): 
| 命令 | 核心用途 | 关键优势 | 
|---|---|---|
| df | 分区空间宏观统计 | 快速定位满盘分区 | 
| du | 目录/文件微观分析 | 精准定位大文件 | 
| lsblk | 块设备物理结构展示 | 识别未分配空间 | 
定期使用这些命令(建议结合 cron 定时任务),可预防磁盘空间危机,对于生产环境,推荐集成监控系统(如Prometheus+Grafana),实现自动化预警。
引用说明: 参考 Linux man-pages(v5.10) 、GNU Coreutils 官方文档 以及 IBM DeveloperWorks 最佳实践,命令示例已在 Ubuntu 20.04 LTS 和 CentOS 7 环境中验证。
 
  
			