Ubutun磁盘突然爆满,删去文件一会儿又爆满
事件描述
某日照常打开虚拟机的ubutun 16.04准备工作,但是却没有像往常一样打开桌面,而是进入了tty终端,并且让输入密码,输入startx
想进入桌面,还是没进去,仔细查看说明,提示没有空间,于是果断在tty终端删除了一个5G的备份文件,重新reboot
终于进入了梦寐以求的桌面。可是好景不长,没过十分钟磁盘再次爆满,关键是这十分钟我都在看东西,啥都没干,真时见鬼了,几个G的内存就这么不易而非,我怎么能甘心,于是开始了和ubutun的斗智斗勇。
具体现象
-
在tty终端删除部分文件后进入了桌面终端,没一会儿有提示磁盘空间已满,于是在home目录下通过
df -ah | grep "[0-9]G"
筛选出占用空间较大的文件。发现有个.ache的目录有五六个G,在确认可以删除后果断删掉。再次查看,磁盘确实释放五六个G。 -
再次查看发现已经少了一个G
-
20分钟后查看发现磁盘再次被填满了。
-
home目录下的空间确认是释放了,但是磁盘仍然被塞满了。
状况分析
空间自动在增加,且需要耗时,那么可以判断系统肯定有一个进程在不停的穿件文件占用空间,那么很自然就要看看到底是什么东西在作祟。于是通过ps -ef
查看进程信息,在仔细搜索后终于发现了异常。
这个/usr/sbin/cupsd -l
的家伙尽然占用了我99% 的CPU,总算找到源头了,接下来就是干掉它了。
解决问题
*:
CUPS(以前为 Common Unix Printing System,UNIX 通用打印系统的缩写,但现无官方全名)是一个类Unix操作系统的组合式印刷系统,允许一台电脑作为打印服务器。CUPS接受一个客户端的电脑进程,并送到相应的打印机。
CUPS是*软件,使用GNU通用公共许可证和GNU宽通用公共许可证的第2版。
在晚上找到了相关介绍,那么就想到会不会是这个家伙在不停的创建log占用空间。于是
cd /var/logdu
cups -h
发现这个这个文件尽然占用了二十几个G,如实果断sudo rm -rf /var/log/cups
删掉这个家伙。
本来事情到这就应该救赎了,可是过了一会儿再次查看磁盘情况发现又少了,再次查看这个日志,发现又开始变大了,那么肯定是没有从根本上干掉,于是打算彻底关掉这家伙,上网找了一圈通过以下命令解决
sudo service cups stop
>type cupsd
cupsd is /usr/sbin/cupsd
sudo chmod 000 /usr/sbin/cupsd
至此,我的电脑终于恢复正常了!特此纪念。