排查linux 磁盘被占满了的问题

排查linux服务器磁盘被占满了的方法

今天发现一台服务器的磁盘被占满了,所以这个时候就需要找出是那些文件比较多或者比较大,导致磁盘被占满了。

第一步:查看磁盘使用率

[root@iZ8vb3omil28ybw2zppjlwZ jobs]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/vda1        40G   38G  222M 100% /
devtmpfs        1.8G     0  1.8G   0% /dev
tmpfs           1.8G     0  1.8G   0% /dev/shm
tmpfs           1.8G  536K  1.8G   1% /run
tmpfs           1.8G     0  1.8G   0% /sys/fs/cgroup
tmpfs           365M     0  365M   0% /run/user/0

可以看到磁盘已经被使用了百分百,而且是在根目录下面的。所以需要查看根目录下每个文件夹和文件的大小

[root@iZ8vb3omil28ybw2zppjlwZ jobs]# du -h -d1 /
76K     /Users
4.0K    /srv
4.0K    /mnt
2.9G    /usr
536K    /run
3.0G    /home
34M     /etc
3.3G    /var
420K    /tmp
du: cannot access ‘/proc/7227/task/7327/fdinfo/37’: No such file or directory
du: cannot access ‘/proc/7227/task/7341/fdinfo/37’: No such file or directory
du: cannot access ‘/proc/7227/task/7789/fdinfo/7’: No such file or directory
du: cannot access ‘/proc/7227/task/8571/fdinfo/40’: No such file or directory
du: cannot access ‘/proc/11914/task/11914/fd/4’: No such file or directory
du: cannot access ‘/proc/11914/task/11914/fdinfo/4’: No such file or directory
du: cannot access ‘/proc/11914/fd/3’: No such file or directory
du: cannot access ‘/proc/11914/fdinfo/3’: No such file or directory
0       /proc
0       /dev
28G     /root
0       /sys
4.0K    /opt
16K     /lost+found
4.0K    /media
132M    /boot
38G     /

可以发现在root目录下占用了28G,所以我们接着去root下面看看

[root@iZ8vb3omil28ybw2zppjlwZ jobs]# du -h -d1 /root
8.0K    /root/.pip
20K     /root/.config
7.0M    /root/.cache
12K     /root/.oracle_jre_usage
8.0K    /root/.groovy
291M    /root/docs
12K     /root/.ssh
28G     /root/.jenkins
8.0K    /root/tmp
8.0K    /root/是完全
24K     /root/是
161M    /root/.npm
24K     /root/ls
608K    /root/.ansible
8.0K    /root/撒
4.0K    /root/.m2
24K     /root/GOOD
28G     /root

发现是root下面的.jenkins占用的,再去.jenkins里面看看,就这样一步一步的查找到占用磁盘空间比较大的文件或者文件,然后清除掉。

还有一个文件就是当我们用rm -rf 这个命令清除掉文件后,这个文件夹是空的,但是用ll命令查看这个文件夹的时候,发现这个文件夹还占有空间,这个时候可能是我们删除了这个文件,但是这个文件的删除进程还在,所以也要杀掉这个删除文件的进程才能真的清理干净。
首先是查看删除进程

lsof |grep delete

然后就是杀掉删除进程

kill -9 `lsof | grep delete | awk '{print $2}'`

又水了一篇博客

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值