好久没写东西了,很久之前弄了个服务器玩玩,写了点东西在上面放着,一直在不停的抓数据,也就没怎么看,最近闲来无事登录后台查看,发现我的妈呀,服务器磁盘快满了
这里写图片描述
刚开始以为抓取的太多,数据库数据膨胀占用了,于是登录MySQL查看,发现有20多万条记录,咋看似乎占了挺多的容量,于是尝试删掉了一些,发现根本不起作用,那究竟是什么东西占了这么多的空间,于是开始搜索资料,查找Linux查看磁盘占用的一些命令,
df -h
这里写图片描述
刚开始以为是/dev/simfs是罪魁祸首了,然后直接暴力(懒)
rm -rf /dev/simfs
可是发现执行之后磁盘占用并没有减少,看来这似乎并不是根源,于是寻找其他指令,发现
du -h
这里写图片描述
虽然能看到了,但是文件太多不好找,想想看到指令有参数可设置,于是尝试
[root@localhost /]# du -h --max-depth=1
16K ./nonexistent
148K ./run
13M ./etc
72K ./tmp
0 ./sys
4.0K ./opt
4.0K ./mnt
557M ./root
4.0K ./lost+found
4.0K ./srv
12K ./boot
1.1G ./var
4.0K ./media
du: cannot access './proc/534/task/30271': No such file or directory
du: cannot access './proc/30264/task/30264/fd/4': No such file or directory
du: cannot access './proc/30264/task/30264/fdinfo/4': No such file or directory
du: cannot access './proc/30264/fd/4': No such file or directory
du: cannot access './proc/30264/fdinfo/4': No such file or directory
0 ./proc
4.0K ./.cpt_hardlink_dir_a920e4ddc233afddc9fb53d26c392319
0 ./dev
18G ./usr
4.0K ./home
20G .
[root@localhost /]#
总算看到点眉目了,路径/usr 下居然占用18G之多,于是进入目录重复指令
[root@localhost usr]# du -h --max-depth=1
16G ./local
330M ./share
348M ./java
12K ./src
394M ./lib64
13M ./include
4.0K ./etc
416M ./sbin
298M ./lib
280M ./bin
31M ./libexec
4.0K ./games
18G .
继续往下查找
[root@localhost local]# du -h --max-depth=1
92K ./share
4.0K ./src
4.0K ./lib64
4.0K ./include
4.0K ./etc
4.0K ./sbin
4.0K ./lib
4.0K ./bin
4.0K ./libexec
4.0K ./games
16G ./apache-tomcat-9.0.0.M18
86M ./git
12M ./haproxy-lkl
16G .
到这里惊奇的发现,我的Tomcat居然占了16G,我的天哦,究竟什么鬼用了这么多磁盘空间,继续往下看
[root@localhost apache-tomcat-9.0.0.M18]# du -h --max-depth=1
4.0K ./temp
16G ./logs
7.4M ./lib
820K ./bin
216K ./work
236K ./conf
68M ./webapps
16G .
[root@localhost apache-tomcat-9.0.0.M18]#
到这里算是水落石出了,原来是Tomcat的log文件把磁盘空间耗尽了,我这里就简单的处理了,直接删掉即可,当然对于个人一劳永逸的办法就是关掉日志记录咯。