温馨提示×

怎么查看linux 磁盘占用

小樊
62
2026-08-13 20:57:07
栏目: 智能运维

在 Linux 里查看磁盘占用(空间使用情况)常用下面几条命令,按使用场景给你列一下:

1️⃣ 查看磁盘整体使用情况(最常用)

df -h
  • -h:以人类可读方式显示(GB/MB)
  • 显示内容:
    • Filesystem:磁盘设备
    • Size:总大小
    • Used:已用
    • Avail:可用
    • Use%:使用率
    • Mounted on:挂载点

示例:

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        40G   20G   18G  53% /

2️⃣ 查看某个目录或文件的磁盘占用

du -h 目录名

常用组合:

du -sh /home
  • -s:只显示总大小
  • -h:人类可读

查看当前目录各级目录占用:

du -h --max-depth=1

3️⃣ 查找大文件(非常实用)

find / -type f -size +500M 2>/dev/null

找出大于 500MB 的文件

或者:

find / -type f -size +1G 2>/dev/null

4️⃣ 查看当前目录下各文件/目录大小(交互式更好)

du -ah | sort -rh | head -20

显示占用最大的前 20 个


5️⃣ 查看 inode 使用情况(磁盘没满但无法写文件时)

df -i
  • inode 满了也会导致无法创建新文件

6️⃣ 使用 ncdu(推荐,可视化强)

如果没有安装先装:

yum install ncdu        # CentOS
apt install ncdu        # Ubuntu/Debian

使用:

ncdu /

可以:

  • 上下左右导航
  • d 删除
  • q 退出

7️⃣ 常见分析思路(磁盘突然满)

  1. 先看整体:
    df -h
    
  2. 定位大目录:
    du -h --max-depth=2 /
    
  3. 找大文件:
    find / -type f -size +1G
    
  4. 是否是日志(/var/log)或 Docker 占用

如果你能贴一下:

  • df -h 的输出
  • 系统盘满 / Docker / 日志 / 数据库 哪一类

我可以帮你精确判断是哪里吃掉了磁盘。

0