售前咨询400-838-0503

Linux服务器如何查看磁盘使用情况?

技术文档 2025-05-15 04:37

5种高效方法:如何在Linux服务器上查看磁盘使用情况

对于Linux服务器管理员来说,实时监控磁盘使用情况是系统维护中最基础也是最重要的任务之一。本文将详细介绍5种专业级的磁盘空间检查方法,帮助您全面掌握服务器存储状态,预防潜在的磁盘危机。

一、df命令:快速概览磁盘使用率

df(disk filesystem)是Linux系统中最基础的磁盘查看工具:

df -h

参数说明:

  • -h:以人类可读格式显示(GB/MB)
  • -T:显示文件系统类型
  • -i:显示inode使用情况

典型输出示例:

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        50G   32G   15G  68% /
/dev/sdb1       500G  320G  155G  68% /data

二、du命令:深入分析目录占用

当需要具体查看某个目录的磁盘占用时,du(disk usage)命令更为精确:

du -sh /var/log/*
du -h --max-depth=1 /home

高级技巧:

  1. 找出占用最大的10个目录:
    du -h / | sort -rh | head -10
  2. 排除特定文件系统:
    du -h --exclude="/proc/*" --exclude="/sys/*" /

三、ncdu:交互式磁盘分析神器

对于新手管理员,推荐使用ncdu(NCurses Disk Usage):

sudo apt install ncdu  # Debian/Ubuntu
sudo yum install ncdu  # CentOS/RHEL

ncdu /

优势特点:

  • 彩色交互式界面
  • 支持键盘导航
  • 可删除文件而不退出程序
  • 支持导出扫描结果

四、lsof命令:追踪被删除但未释放的空间

当df显示磁盘已满但du找不到大文件时,可能是进程占用了已删除文件:

lsof | grep deleted
ls -la /proc/*/fd | grep deleted

解决方法:

  1. 重启相关进程
  2. 使用kill -HUP PID发送挂起信号
  3. 对于重要服务,应先创建日志轮换

五、自动化监控方案

对于企业级环境,建议配置自动化监控:

1. 使用cron定时检查

# 每天检查一次并发送邮件
0 0 * * * df -h > /var/log/disk_usage.log

2. 配置Zabbix/Grafana监控

关键监控项:

  • 磁盘使用率阈值报警(建议80%)
  • inode使用率监控
  • 磁盘IO性能指标

实用技巧补充

  • 快速清理日志:
    journalctl --vacuum-size=200M
  • 查找大文件:
    find / -type f -size +100M -exec ls -lh {} \;
  • LVM扩展:当需要扩容时,LVM工具链(pvcreate/vgextend/lvextend)是最佳选择

掌握这些磁盘监控技术,您将能够:

  1. 提前发现存储瓶颈
  2. 快速定位空间占用源头
  3. 有效预防因磁盘满导致的系统故障

建议将df -h加入您的每日检查清单,对于生产环境,务必配置自动化监控和报警机制。

如本公告涉及你的产品,或有不清楚之处,可提交工单确认。

提交工单