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 服务器上,可使用 ntpdate 命令或配置

    2025年8月18日
    14500
  • Virtual Console能做什么?

    在Linux系统中,控制台(Console)是用户与操作系统内核交互的核心接口,常用于系统管理、故障恢复或运行命令行程序,它与终端(Terminal)的区别在于:控制台直接关联系统物理设备(如显示器、键盘),而终端(包括图形终端模拟器)是通过软件模拟的输入输出环境,以下是几种在Linux下产生控制台的详细方法……

    2025年7月24日
    16200
  • Linux如何实时监测内存使用情况及占用?

    Linux内存监测是系统运维和性能优化中的核心环节,通过实时或历史数据掌握内存使用情况,可有效避免内存不足导致的系统卡顿、服务崩溃等问题,Linux提供了多种内置工具和第三方工具,结合不同命令参数和输出分析,能全面监控内存状态,以下从常用工具、核心指标、分析方法三方面详细说明,基础内存监测工具:快速查看整体状态……

    2025年10月7日
    12600
  • Linux下如何查看进程是否存在?

    在Linux系统中,查看进程是否存在是日常系统管理和故障排查中的常见操作,无论是监控服务状态、调试程序还是编写自动化脚本,都需要准确判断进程的运行情况,Linux提供了多种命令和方法来实现这一需求,下面将详细介绍几种主流的方式,包括它们的用法、优缺点及适用场景,使用ps命令结合grep过滤ps(process……

    2025年8月24日
    17200
  • Linux如何显示文件的ctime状态改变时间?

    在Linux系统中,文件的时间属性是管理和排查问题的重要依据,其中ctime(change time)即状态改变时间,指的是文件状态(如权限、所有者、文件名、硬链接数等元数据)最后一次发生变化的时间,与mtime(modification time,内容修改时间)和atime(access time,访问时间……

    2025年8月25日
    17000

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信