Centos磁盘空间占满的解决办法和/bin/rm: argument list too long 的处理方法

Centos磁盘空间占满的解决办法

1、第二块磁盘使用率达到97%

[root@feng020 ~]# df -l
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/xvda1 20641404 10565932 9026948 54% /
tmpfs 4029028 0 4029028 0% /dev/shm
/dev/xvdb1 103210940 67011820 30956312 97% /hotdata
[root@feng020 ~]# df -l
既然确定了哪块磁盘占用率高,那就切换到这块磁盘检查一下这块磁盘的哪个文件夹占用高,再逐层去查找

du -h –max-depth=1


1
可以看出是kehu这个文件夹占用了72G。现在需要优化的就是这个文件夹了

[root@feng020 ~]# cd /hotdata
[root@feng020 hotdata]# du -h –max-depth=1
140K ./temp
12M ./memcached
16K ./run
72G ./kehu
415M ./soft
87M ./systemlog
20K ./lost+found
11G ./database
163M ./interface
91G .
查找出kehu这个文件夹下的文件占用情况

从下方结果可以看到哪些文件夹比较大,分析后是程序运行的日志文件,长期未处理,导致磁盘占满。所以找到这些文件夹下的日志目录,删除即可

/bin/rm: argument list too long 的处理方法

2、想删除一个cache目录,谁知道输入

rm *


的命令后,大概几秒后屏幕就跳出

/bin/rm: argument list too long

条件反射动作,上百度和google查找,找到解决方法和原因,原因是一个文件夹下文件太多,使用rm删除就会出现/bin/rm: Argument list too long错误.


按网址上面写的输入

ls | xargs -n 10 rm -fr ls


就解决了,这句解释为:输出所有的文件名(用空格分割) xargs就是将ls的输出,每10个为一组(以空格为分隔符),作为rm -rf的参数也就是说将所有文件名10个为一组,由rm -rf删除,这样就不会超过命令行的长度了.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值