优秀的编程知识分享平台

网站首页 > 技术文章 正文

linux-文件太多了,如何快速清空?

nanyue 2024-09-11 05:23:26 技术文章 5 ℃

前言

在Centos/REHL服务器上面,如果crontab输出没有重定向,就会输出到邮件,那这些邮件到哪里去了呢?一般是放到了/var/spool/mail/里面。

但是如果没有开启邮件服务器呢?那就会放到/var/spool/clientmqueue/里面,而且还是一封邮件就是一个文件地存放。

那么问题来了,磁盘在格式化的时候inode就固定了,所以太多的小文件会导致inode用空,导致磁盘无法被写入。

今天就遇到/var/spool/clientmqueue/ 这个目录的文件过多导致,磁盘出现无法写入。

尝试解决

使用

rm -f /var/spool/clientmqueue/*

出现报错:

Argument list too long

显然不行,使用管道xargs呢,文件太多肯定也慢,find也是一样。

使用同步来删除

创建一个空的目录,然后通过rsync同步删除目录文件:

mkdir /tmp/dir1/

rsync -ar --delete /tmp/dir1/ /var/spool/clientmqueue/

chown smmsp:smmsp /var/spool/clientmqueue/

这样子速度就很快了!

最近发表
标签列表