天天看点

centos网卡发送被占满了_CentOS7排查并解决服务器硬盘被占满的问题

今早正在愉快地使用Flutter开发客户端的时候,突然发现所有接口都使用不了了,觉得很奇怪,服务器上什么都没有动怎么突然不行了呢?

于是登录CentOS服务器查看Spring Boot服务的日志,发现了以下异常:

1

2

3

4org.springframework.context.ApplicationContextException: Unable to start web server; nested exception is java.lang.IllegalStateException: Unable to create the directory [/tmp/tomcat.1964230947136987004.8000] to use as the base directory

at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:157)

at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:543)

at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:142)

哦,原来是Tomcat无法创建它的临时工作目录了。

于是就执行

1df -h

查了一下服务器的硬盘信息:

1

2

3

4

5

6

7Filesystem Size Used Avail Use% Mounted on

/dev/vda1 99G 94G 0 100% /

devtmpfs 7.8G 0 7.8G 0% /dev

tmpfs 7.8G 0 7.8G 0% /dev/shm

tmpfs 7.8G 532K 7.8G 1% /run

tmpfs 7.8G 0 7.8G 0% /sys/fs/cgroup

tmpfs 1.6G 0 1.6G 0% /run/user/1000

果然!根目录下使用率100%,硬盘被占满了!这是个严重的问题,不过该怎么排查哪些文件占用的空间呢?查了一番资料,发现使用下面命令可以一层层的跟踪排查:

1du -x -m --max-depth 1 /

先从根目录开始:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16[[email protected] log]# du -x -h -m --max-depth 1 /

5 /tmp

4104 /root

668 /opt

1 /media

55960 /var

708 /WWW

1 /srv

38 /etc

2544 /home

27338 /data

1 /mnt

214 /boot

4115 /usr

1 /lost+found

95687 /

OK,发现/var目录占用最多,于是就怀疑是日志文件的问题,因为系统日志都在/var目录下。接着进入/var/log目录,执行命令确定一下:

1ll -h

果然,全部都是日志文件占用的空间:

1

2

3

4

5-rw------- 1 root root 6.8G Oct 10 11:22 messages

-rw------- 1 root root 7.9G Sep 15 03:33 messages-20190915

-rw------- 1 root root 9.9G Sep 22 03:37 messages-20190922

-rw------- 1 root root 11G Sep 29 03:11 messages-20190929

-rw------- 1 root root 11G Oct 6 03:49 messages-20191006

也可以执行命令查看目录所占的空间:

1du -sh *

服务器一共就100G的存储空间,却被这些日志文件占去了一大半,查看了一下内容,发现大部分都是服务器上的定时任务的信息,因为定时任务非常频繁,而且打印的信息量比较大,看着这块要优化一下了。

先把这些日志删除一下,保证服务正常:

1rm messages*

删除后,启动服务器,一切终于正常了!