hopeless-dream

导航

argument list too long

在执行rm、mv、cp等命令的时候,如果要操作的文件过多(例如:使用通配符或正则表达式处理),就会报错 “argument list  too long”

现象

生产上的一台跑批服务器有很多定时任务,在某一天通过crontab命令添加定时任务后,出现报错:

crontab : installing new crontab

cron/tmp/crontab.xxxxx: no space left on device

crontab :edits left in /tmp/crontab.xxxxx

排查思路

根据现象判断是磁盘空间慢了

crontab的写入文件位置是在/var/spool/cron/用户名,并且默认会发送邮件到/var/spool/postfix/maildrop/,所以需要检查var目录的空间剩余情况

解决问题

经查看,/var目录占分区大小的90%,需要删除文件

执行 rm *的时候报错,“argument list  too long”,因为待处理的文件过多

使用find命令删除文件

find /var/spool/postfix/maildrop -type f -exec rm -f {} \;

 

posted on 2020-07-13 20:25  hopeless-dream  阅读(647)  评论(0编辑  收藏  举报