目录占太多空间?速查方法在此!

使用du -sh命令查看当前目录总占用空间,-s汇总显示,-h自动转换易读单位(如KB/MB/GB),结果包含所有子目录和文件大小。

df 命令(最常用)

作用:快速查看文件系统的磁盘使用情况(挂载点、总空间、已用空间、剩余空间)。
基础用法

df -h
  • -h:以人类可读格式显示(GB/MB/KB)。
  • 输出示例
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/sda1        50G   30G   18G  63% /
    tmpfs           3.9G     0  3.9G   0% /tmp

    进阶技巧

  • 查看特定文件系统类型(如 ext4):
    df -h -t ext4
  • 排除临时文件系统(如 tmpfs):
    df -h -x tmpfs

du 命令(分析目录占用)

作用:统计目录或文件的磁盘使用量,定位大文件。
常用场景

# 查看指定目录(如 /var)的占用
du -sh /var
# 递归显示子目录大小(按大小排序)
du -h /home | sort -h
  • -s:仅显示总大小(不递归)。
  • -h:人类可读格式。
  • --max-depth=1:限制递归深度(例:du -h --max-depth=1 /)。

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

  • GNOME 磁盘使用分析器(Baobab)
    通过 baobab 命令启动,可视化展示磁盘占用。
  • KDE 文件管理器:右键点击目录 → 属性 → 查看占用空间。

高级工具推荐

  • ncdu(终端交互式工具):
    安装:sudo apt install ncdu(Debian/Ubuntu)或 sudo yum install ncdu(CentOS/RHEL)。
    使用:ncdu / 进入交互界面,按方向键浏览目录,d 键删除文件。
  • lsblk:查看块设备信息(磁盘分区):
    lsblk -f  # 显示文件系统类型

监控与自动化建议

  • 设置告警
    使用 cron 定时任务 + df 命令检测空间(例:当 分区使用率 >90% 时发邮件告警)。
  • 日志清理
    定期清理 /var/log/(使用 logrotate)或旧内核文件(sudo apt autoremove)。
  • 扩展磁盘
    若使用 LVM,可通过 lvextend 动态扩容(需提前规划)。

为什么需要定期检查?

  • 系统稳定性:根分区()满会导致系统无法写入日志或创建临时文件。
  • 服务运行:数据库(如 MySQL)、Web 服务(如 Nginx)可能因空间不足崩溃。
  • 数据安全:避免因空间耗尽导致文件损坏。

常见问题排查

  • df 显示已用 100%,但 du 找不到大文件?
    可能是已删除文件仍被进程占用(如日志文件),解决:

    lsof +L1  # 查看未释放空间的进程
    sudo systemctl restart service_name  # 重启相关服务释放空间
  • 空间被隐藏文件占用?
    使用 du -sh /home/.* 检查用户目录下的隐藏文件(如 .cache)。

引用说明: 基于 Linux 核心工具(df、du)的官方文档及社区最佳实践(如 Ubuntu Wiki),适用于主流通用发行版(Debian, Ubuntu, CentOS, RHEL 等),操作前请确保您有相应权限,生产环境建议备份数据。

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

(0)
酷番叔酷番叔
上一篇 2025年7月5日 00:58
下一篇 2025年7月5日 01:12

相关推荐

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信