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

使用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

相关推荐

  • Linux创建文件,这7种方法你会几种?

    命令行方法(终端操作)touch 命令(最常用)作用:创建空白文件或更新文件时间戳,步骤:touch filename.txt # 创建单个文件touch file1.txt file2.log # 同时创建多个文件适用场景:快速创建空文件(如日志占位、配置模板),重定向符号 >作用:将命令输出写入文件……

    11小时前
    400
  • Linux如何快速统计用户数量?

    核心方法:通过系统文件直接统计统计所有本地用户 cat /etc/passwd | grep -vE '(nologin|false|sync|halt)' | wc -l原理:/etc/passwd 存储所有用户信息,grep -v 排除系统服务账户(如nologin等伪用户),输出示例:24……

    5天前
    900
  • Linux如何区分多个U盘的盘符?

    在Linux中区分多个U盘,可通过物理标识(如设备序列号、制造商信息)结合系统信息(如/dev/disk/by-id/路径下的符号链接、udev规则或dmesg日志)精确对应物理设备与盘符(/dev/sdX)及挂载点。

    2025年7月6日
    1200
  • 强制关闭终端会怎样?

    基础退出方法exit 命令在命令行输入 exit 后回车,会立即终止当前Shell会话并关闭终端窗口,适用场景:无后台任务运行时的标准退出方式,快捷键 Ctrl + D按下组合键 Ctrl + D(相当于发送EOF信号),效果等同于 exit 命令,注意:若终端中有未完成的输入(如多行命令未闭合),需多次按 C……

    3天前
    1400
  • 如何编译main.c生成可执行文件app?

    在Linux环境下,Makefile是自动化编译和构建项目的核心工具,尤其适用于C/C++等语言的项目管理,它通过定义规则(rules)描述文件间的依赖关系,仅重新编译改动过的文件,大幅提升开发效率,以下内容基于GNU Make 4.3+版本,适用于主流Linux发行版(如Ubuntu、CentOS),Make……

    2025年6月20日
    1300

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信