Linux 磁盘占用分析

Linux 磁盘占用分析

Posted by zhouqian on Wednesday, May 18, 2022

磁盘相关命令

  1. df
  2. du

大文件占用查找思路

  1. 使用 df -Th 找到希望查找的目录中磁盘占用最大的目录。
    [root@iZuf6cdrrzbsjtp7kwq6haZ ~]# df -Th
    Filesystem     Type      Size  Used Avail Use% Mounted on
    devtmpfs       devtmpfs  387M     0  387M   0% /dev
    tmpfs          tmpfs     405M     0  405M   0% /dev/shm
    tmpfs          tmpfs     405M  460K  404M   1% /run
    tmpfs          tmpfs     405M     0  405M   0% /sys/fs/cgroup
    /dev/vda3      xfs        40G  3.0G   37G   8% /
    /dev/vda2      vfat      100M  7.3M   93M   8% /boot/efi
    tmpfs          tmpfs      81M     0   81M   0% /run/user/0
    
    此时磁盘占用最大的目录为 /
  1. 使用 du -hd1 / 查找 / 目录中子目录的磁盘占用情况。
    [root@iZuf6cdrrzbsjtp7kwq6haZ ~]# du -hd1 /
    274M	/boot
    0	/dev
    0	/proc
    460K	/run
    0	/sys
    25M	/etc
    76K	/root
    278M	/var
    2.1G	/usr
    0	/home
    0	/media
    0	/mnt
    0	/opt
    0	/srv
    0	/tmp
    2.7G	/
    
    此时,可以看到其中 /usr 目录的磁盘占用最大。
  1. 再继续使用 du -hd1 /usr 查找 /usr 目录下的子目录磁盘占用情况。
    [root@iZuf6cdrrzbsjtp7kwq6haZ ~]# du -hd1 /usr
    91M	/usr/bin
    55M	/usr/sbin
    908M	/usr/lib
    290M	/usr/lib64
    430M	/usr/share
    12M	/usr/include
    0	/usr/games
    65M	/usr/libexec
    220M	/usr/local
    77M	/usr/src
    4.0K	/usr/config
    2.1G	/usr
    
    此时,子目录 /usr/lib 占用的磁盘最大。
  1. 重复使用 du -hd1 命令执行上述步骤,就可以找到指定目录下的大文件了。