df显示磁盘空间满了,实际没有满的处理案例

文章目录

  • 1.问题描叙
    • 1.1 df显示磁盘空间使用已达100%
    • 1.2 du检查实际使用空间
  • 2.Solution
    • 2.1 根因
    • 2.2 使用lsof列出持有删除文件的pid
    • 2.3 kill 进程
    • 2.4 验证

1.问题描叙

1.1 df显示磁盘空间使用已达100%

df显示"/"目录使用已达100%

[root@pcms-mes dev]# df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        7.8G     0  7.8G   0% /dev
tmpfs           7.8G  1.3G  6.6G  16% /dev/shm
tmpfs           7.8G   34M  7.8G   1% /run
tmpfs           7.8G     0  7.8G   0% /sys/fs/cgroup
/dev/sda2        31G   29G     0 100% /
/dev/sda1       190M  183M     0 100% /boot
/dev/sdd         50G  4.1G   43G   9% /u3
/dev/sde         99G   82G   12G  88% /u4
/dev/sdc         99G   49G   45G  53% /u2
/dev/sdb        109G   94G  8.8G  92% /u1
tmpfs           1.6G     0  1.6G   0% /run/user/54321

1.2 du检查实际使用空间

du查询,并没有哪个目录消耗过多的空间

[root@pcms-mes dev]# du -sh /* --exclude=/u1 --exclude=/u2 --exclude=/u3 --exclude=/u4 --exclude=/proc 
84K     /backup
0       /bin
181M    /boot
0       /DBBACKUP
1.3G    /dev
39M     /etc
20M     /home
0       /lib
0       /lib64
16K     /lost+found
4.0K    /media
4.0K    /mnt
1.4M    /opt
4.6G    /oracle
72K     /root
34M     /run
0       /sbin
4.0K    /srv
0       /sys
68K     /tmp
2.6G    /usr
680M    /var

2.Solution

2.1 根因

某个进程可能打开了一个大文件,但后来又被删除了。 必须终止该进程才能释放空间。 可以使用 lsof 来识别该进程。 在 Linux 上,lsof 知道已删除但打开的文件,并在 lsof 的输出中标记为((deleted))。

2.2 使用lsof列出持有删除文件的pid

[oracle@pcms-mes ~]$ lsof +L1
COMMAND  PID   USER   FD   TYPE DEVICE    SIZE/OFF NLINK   NODE NAME
expdp   3213 oracle    1w   REG    8,2 22482501632     0 401159 /home/oracle/nohup.out (deleted)
expdp   3213 oracle    2w   REG    8,2 22482501632     0 401159 /home/oracle/nohup.out (deleted)

2.3 kill 进程

[oracle@pcms-mes ~]$ kill -9 3213

2.4 验证

可以看到,进程被kill后,”/"目录已经得到空间释放

[oracle@pcms-mes ~]$ df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        7.8G     0  7.8G   0% /dev
tmpfs           7.8G  1.3G  6.6G  16% /dev/shm
tmpfs           7.8G   34M  7.8G   1% /run
tmpfs           7.8G     0  7.8G   0% /sys/fs/cgroup
/dev/sda2        31G  7.9G   21G  28% /
/dev/sda1       190M  183M     0 100% /boot
/dev/sdd         50G  4.5G   43G  10% /u3
/dev/sde         99G   82G   12G  88% /u4
/dev/sdc         99G   49G   45G  53% /u2
/dev/sdb        109G   94G  8.8G  92% /u1
tmpfs           1.6G     0  1.6G   0% /run/user/54321

你可能感兴趣的:(Linux,linux)