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

Linux查看磁盘空间快速方法

使用 df -h 命令直接查看所有磁盘分区的使用情况,包括总容量、已用空间、可用空间和挂载点, -h 参数使容量以人性化单位(如GB, MB)显示,要查看具体目录大小,可使用 du -sh 目录路径 命令。

核心命令行工具

df 命令(文件系统统计)

作用:显示磁盘分区的总容量、已用空间和可用空间。
基础用法

df -h
  • 参数解析
    • -h:以易读的单位(GB/MB)显示。
    • -T:显示文件系统类型(如ext4、xfs)。
    • --total:汇总所有分区的统计结果。

输出示例

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        50G   32G   16G  67% /
/dev/sdb2       200G   45G  155G  23% /home

关键指标

  • Use% 超过 80% 时需清理空间
  • Avail 表示剩余可用空间

du 命令(目录深度分析)

作用:分析指定目录或文件的磁盘占用。
常用操作

Linux查看磁盘空间快速方法  第1张

# 查看当前目录总占用
du -sh .
# 扫描/home下所有子目录大小(按从大到小排序)
du -h /home | sort -h -r
# 仅显示前3个大目录
du -h /var/log | sort -rh | head -n 3
  • 参数说明
    • -s:汇总目录总大小
    • -h:人性化单位显示
    • --max-depth=1:限制扫描层级

进阶工具组合

  • lsblk(块设备拓扑)
    查看磁盘分区结构:

    lsblk -f

    输出包含分区名称、类型、挂载点等关键信息。

  • ncdu(交互式分析)
    需安装:sudo apt install ncdu
    可视化扫描目录:

    ncdu /var

    支持键盘导航(按d删除文件,r刷新数据)。


图形界面方案

  1. GNOME 磁盘分析器(Baobab)

    • 安装:sudo apt install baobab
    • 启动后选择扫描路径,以树状图和环形图展示空间分布。
  2. KDE 文件管理器

    • 右键点击目录 → PropertiesDisk Usage 直接显示占用详情。

自动化监控技巧

设置磁盘警报

通过 cron 定时任务每周发送报告:

# 编辑crontab
crontab -e
# 添加以下行(每周一6:00执行)
0 6 * * 1 df -h > /tmp/disk_report.log && mail -s "Disk Space Report" admin@example.com < /tmp/disk_report.log

快速定位大文件

# 查找超过100MB的文件(从根目录开始)
sudo find / -type f -size +100M -exec ls -lh {} ;

关键注意事项

  1. 警惕/dev/proc伪文件系统
    df 可能显示 devtmpfstmpfs,这些是内存虚拟磁盘,无需处理。
  2. 删除操作前备份
    执行 rm 命令前用 -i 参数确认(如 rm -i largefile.log)。
  3. 保留至少10%的剩余空间
    部分文件系统(如ext4)在空间不足时性能急剧下降。

场景化解决方案

问题场景 推荐命令
快速查看根分区剩余空间 df -h /
分析日志目录占用 sudo du -sh /var/log
清理旧内核(Ubuntu) sudo apt autoremove --purge
清理Docker无用数据 docker system prune -a

引用说明

  • Linux手册页:man df, man du, man find(权威命令文档来源)
  • Filesystem Hierarchy Standard:规范Linux目录结构(最新版)
  • GNU Coreutils:基础工具集官方文档(在线访问)

提示:生产环境中删除文件前,务必通过 tar -zcvf backup.tar.gz [目录] 创建备份,对于关键服务器,建议部署监控工具(如Prometheus+Alertmanager)实时预警磁盘异常。

0