Linux磁盘空间不足?5招防宕机!

使用 df 命令(推荐首选)

df(Disk Free)是Linux内置工具,可快速显示文件系统的磁盘使用情况。
基础命令

df -h
  • -h:以人类可读格式显示(GB/MB/KB)
  • 输出列说明
    • Filesystem:磁盘分区名称
    • Size:总空间
    • Used:已用空间
    • Avail空闲空间
    • Use%:使用百分比
    • Mounted on:挂载点

示例输出

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        50G   30G   18G  63% /
/dev/sdb1       200G   50G  150G  25% /data

高级用法

  • 查看特定目录所在分区:df -h /home
  • 排除临时文件系统:df -h -x tmpfs

使用 du 命令分析目录占用

若需定位大文件/目录占用的空间(影响空闲磁盘的根源):

du -sh /path/to/directory
  • -s:显示目录总大小
  • -h:人类可读格式
  • 常用场景
    • 扫描 /homedu -sh /home/* | sort -hr(按大小排序)
    • 查找超过100MB文件:find /var -type f -size +100M -exec du -h {} +

图形化工具(适合桌面用户)

  1. GNOME Disks
    • 安装:sudo apt install gnome-disk-utility(Debian/Ubuntu)
    • 打开后直观显示各分区空闲空间。
  2. GParted

    支持分区调整,同时展示空间使用情况。


自动化监控方案

  1. 设置磁盘告警
    编辑 /etc/crontab,添加定期检查任务:

    0 * * * * root df -h | grep -E '/($|/data$)' | awk '{ if($5 > "90%") print "ALERT: "$6" full!" }' | mail -s "Disk Alert" admin@example.com

    (当根目录或/data分区使用率>90%时发送邮件)

  2. 监控工具集成
    • 使用 Prometheus+Node ExporterZabbix 实现实时监控。

注意事项(避免常见错误)

  1. 区分物理空间与inode
    • 空间充足但提示”磁盘满”?可能是inode耗尽:df -i 检查。
  2. 挂载点覆盖问题

    若目录被新分区挂载,原数据会被隐藏(卸载后恢复)。

  3. LVM/RAID场景
    • 逻辑卷需用 lvdisplayvgdisplay 查看底层空间。

场景 推荐命令 关键参数
快速查看所有分区空闲空间 df -h(易读格式)
定位大文件/目录 du -sh(汇总大小)
自动化监控 cron + df 结合告警脚本

定期检查磁盘空间是Linux系统健康的基石,对于服务器环境,建议每周至少手动检查一次,并配置自动化告警,若需深入学习,可参考 GNU Coreutils 官方文档或 man df/man du 获取完整参数说明。

引用说明

  • 命令参数基于 GNU Coreutils 9.1 版本(2025年最新稳定版)
  • 文件系统标准遵循 Linux Filesystem Hierarchy Standard v3.0
  • 监控方案参考 Zabbix 官方监控最佳实践

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/9225.html

(0)
酷番叔酷番叔
上一篇 2025年7月29日 19:11
下一篇 2025年7月29日 19:23

相关推荐

  • Linux系统如何快速返回桌面界面?

    在Linux操作系统中,“回桌面”通常指从当前打开的窗口、应用程序或终端界面切换到图形化桌面环境,即显示所有窗口的最小化状态或空白桌面,方便用户快速访问桌面图标或启动其他程序,由于Linux桌面环境(如GNOME、KDE Plasma、XFCE等)的多样性和定制性,实现“回桌面”的方法也因环境而异,以下将详细介……

    2025年9月9日
    21300
  • Linux如何创建目录?新手教程

    在Linux系统中,创建目录(活页夹)使用mkdir命令,如mkdir dir_name,注意事项包括检查用户权限、确保路径正确、避免特殊字符,以保障操作安全高效。

    2025年7月2日
    20600
  • Linux下如何修改MySQL密码的详细操作步骤与方法?

    在Linux环境下修改MySQL密码是数据库管理中的常见操作,根据是否已知当前密码、MySQL版本(如5.7、8.0)及安装方式(源码、包管理器等),操作步骤存在差异,本文将详细介绍不同场景下的密码修改方法,并涵盖注意事项及问题排查,修改密码前的准备工作确认MySQL服务状态确保MySQL服务正在运行,可通过以……

    2025年9月30日
    15900
  • Linux下如何使用GDB调试程序?

    在Linux系统中,GDB(GNU Debugger)是功能强大的调试工具,主要用于C/C++等程序的调试,支持断点设置、变量查看、内存分析、堆栈跟踪等功能,掌握GDB的使用能显著提升程序问题定位的效率,以下从安装、启动、基本操作到高级功能详细说明其使用方法,安装与启动GDB安装GDB不同Linux发行版的安装……

    2025年9月18日
    18600
  • Linux下如何退出sqlplus?

    在Linux系统中,SQLPlus作为Oracle数据库常用的命令行工具,用于执行SQL语句、PL/SQL块及数据库管理操作,完成数据库任务后,正确退出SQLPlus是确保会话正常结束、释放资源的关键步骤,本文将详细说明Linux环境下退出SQL*Plus的各种方法、适用场景及注意事项,帮助用户高效管理数据库会……

    2025年9月26日
    18600

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信