查看Linux空间常用命令

Administrator
发布于 2025-07-25 / 1 阅读
0
0

查看Linux空间常用命令

1.查看 /app 文件夹总占用空间(推荐用法)

du -sh /app
  • -s:只显示总计,不递归显示子目录;

  • -h:以人类可读方式显示(如 KB、MB、GB)。

示例输出

[root@work2 ~]# du -sh /app
1.2G    /app

说明 /app 目录总共占用了约 1.2GB。


2.查看 /app 下每个子目录的空间占用:

du -h --max-depth=1 /app
  • --max-depth=1 表示只查看一层子目录;

  • 可用于快速判断哪些子目录占空间多。

示例输出

100M    /app/logs
900M    /app/upload
200M    /app/cache
1.2G    /app

这样你就能快速定位哪些子目录占用空间最多。

需要进一步排查的话,也可以加上排序:

du -h --max-depth=1 /app | sort -h

CentOS / RedHat / Alibaba Cloud Linux 系统(即 RPM 系统):

3.查看所有安装的 RPM 包及其占用空间

rpm -qa --qf '%{SIZE}\t%{NAME}\n' | sort -n | numfmt --to=iec | column -t

含义说明:

  • rpm -qa: 列出所有已安装的软件包。

  • %{SIZE}: 显示每个包的安装体积(单位为字节)。

  • sort -n: 按照体积排序。

  • numfmt: 转换成人类可读的单位(如 KB、MB)。

  • column -t: 整齐对齐输出。

3.1 查看看前 20 个最占空间的包:

rpm -qa --qf '%{SIZE}\t%{NAME}\n' | sort -n | tail -n 20 | numfmt --to=iec | column -t

✅ 获取所有安装包的完整磁盘占用列表(类似你贴的这部分):

请运行:

rpm -qa --qf '%{SIZE}\t%{NAME}\n' | sort -n | tail -n 30 | numfmt --to=iec | column -t

这将列出磁盘占用最多的 30 个已安装包,并以易读单位显示,如你上面贴的结果一样。


✅ 看哪些目录占用最多磁盘空间(不只软件包,还包括日志、上传文件、缓存等):

3.2 查看所有子文件的大小:

你可以运行:

du -h --max-depth=1 / | sort -h

它会列出根目录下每个一级子目录(比如 /var/usr/home)的空间占用情况。

然后可以继续深入,比如:

du -h --max-depth=1 /var | sort -h

/app 目录下每个文件和子目录的大小,可以使用:

du -h --max-depth=1 /app

示例输出:

140M    /app/asdre-lt
12M     /app/logs
8.0K    /app/README.md
...

查看当前目录下日志文件大小(每个文件的大小):

du -h *

或者:

du -sh *

💡 示例输出(假设):

4.0M    biz-icf-home.log
8.1M    biz-icf-home.log.20250709
7.6M    biz-icf-home.log.20250710
...

这样你就可以看到每个日志文件占用多少空间,从而判断是否可以清理。


评论