前言
工作中经常遇到Linux系统磁盘空间不足,但是删除后较大的日志文件后,发现磁盘空间仍没有被释放,有点摸不着头脑,今天博主带大家解决这个问题。
思路
1、工作发现磁盘空间不足;
2、找到占用磁盘空间较大的文件进行删除;
3、删除文件后,查看磁盘空间使用情况,未释放;
4、找到相应delete进程,杀掉即可,问题解决。
具体操作
查看服务器磁盘空间使用情况
[root@i-3E5C86C8 ~]#df -h
Filesystem Size Used Avail Use%Mounted on/dev/vda3 51G 34G 15G 70% /tmpfs7.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 mailin /var/spool/mail/root
[root@i-3E5C86C8 ~]#
可以看出根目录下的可用空间15G,Used-34G,接着使用命令:du -sh *,查看当前所在目录的各子目录磁盘空间占用情况
[root@i-3E5C86C8 /]#cd /
[root@i-3E5C86C8 /]#du -sh * #该命令可以列出当前所在目录的子目录所占空间大小
7.8M bin
36M boot4.0K cgroup4.0K Hello
200K dev
538M disk1
30M etc
12G home
232M test
14M jacoco
200M lib
27M lib644.0K logs
16K lost+found4.0K media0misc
82M mnt0net8.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 directory0proc
11G root
17M sbin4.0K selinux
12M Serveragent4.0K srv0sys0thread.dump3.2M tmp1.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)
java2873 root 2w REG 252,3 6392907748 1575685 /home/cloud/test/nohup.out (deleted)
java2873 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)
java2873 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)
java2873 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)
java2873 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
如果觉得《虚拟机linux删除文件后未释放空间 【Linux命令】删除大文件后磁盘空间未释放问题...》对你有帮助,请点赞、收藏,并留下你的观点哦!