前言java
工做中常常遇到Linux系統磁盤空間不足,可是刪除後較大的日誌文件後,發現磁盤空間仍沒有被釋放,有點摸不着頭腦,今天博主帶你們解決這個問題。linux
思路服務器
一、工做發現磁盤空間不足;app
二、找到佔用磁盤空間較大的文件進行刪除;spa
三、刪除文件後,查看磁盤空間使用狀況,未釋放;日誌
四、找到相應delete進程,殺掉便可,問題解決。code
具體操做blog
查看服務器磁盤空間使用狀況進程
[root@i-3E5C86C8 ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/vda3 51G 34G 15G 70% / tmpfs 7.8G 0 7.8G 0% /dev/shm /dev/vda1 190M 38M 143M 21% /boot /dev/mapper/vg-lv 92G 597M 87G 1% /disk1 You have new mail in /var/spool/mail/root [root@i-3E5C86C8 ~]#
能夠看出根目錄下的可用空間15G,Used-34G,接着使用命令:du -sh *,查看當前所在目錄的各子目錄磁盤空間佔用狀況class
[root@i-3E5C86C8 /]# cd / [root@i-3E5C86C8 /]# du -sh * #該命令能夠列出當前所在目錄的子目錄所佔空間大小 7.8M bin 36M boot 4.0K cgroup 4.0K Hello 200K dev 538M disk1 30M etc 12G home 232M test 14M jacoco 200M lib 27M lib64 4.0K logs 16K lost+found 4.0K media 0 misc 82M mnt 0 net 8.0K opt du: cannot access `proc/26758/task/26758/fd/4': No such file or directory du: cannot access `proc/26758/task/26758/fdinfo/4': No such file or directory du: cannot access `proc/26758/fd/4': No such file or directory du: cannot access `proc/26758/fdinfo/4': No such file or directory 0 proc 11G root 17M sbin 4.0K selinux 12M Serveragent 4.0K srv 0 sys 0 thread.dump 3.2M tmp 1.7G usr 235M var [root@i-3E5C86C8 /]#
依此類推,能夠找到一些無用的大文件進行刪除,刪除後發現磁盤空間未釋放,使用命令:lsof | grep delete
[root@i-3E5C86C8 cloud]# lsof | grep delete java 2873 root 1w REG 252,3 6392907748 1575685 /home/cloud/test/nohup.out (deleted) java 2873 root 2w REG 252,3 6392907748 1575685 /home/cloud/test/nohup.out (deleted) java 2873 root 53u REG 252,3 0 1704161 /home/cloud/test/file:/home/cloud/test/test.jar!/BOOT-INF/classes!/flume/run/data/in_use.lock (deleted) java 2873 root 185r REG 252,3 1623704364 1704176 /home/cloud/test/file:/home/cloud/test/test.jar!/BOOT-INF/classes!/flume/run/data/log-14 (deleted) java 2873 root 187u REG 252,3 1147833050 1704194 /home/cloud/test/file:/home/cloud/test/test.jar!/BOOT-INF/classes!/flume/run/data/log-15 (deleted) java 2873 root 262r REG 252,3 1147833050 1704194 /home/cloud/test/file:/home/cloud/test/test.jar!/BOOT-INF/classes!/flume/run/data/log-15 (deleted) [root@i-3E5C86C8 cloud]#
找到相應的進程號,刪除便可。
命令:kill -9 pid