先说一下用于磁盘空间快满时检查

很多小伙伴会想到find  ,这个想法是好的,不过find 有点慢,也不方便,例如:

find /home1 -type f -size +1000000k


如果我们这样做呢:

du+awk组合 显示所有目录及文件大于100M的

du -h / |awk '$1 ~/M/'|awk -F 'M' '$1>100'


一般空间的问题是由日志文件产生的。另有两种特殊情况:

一.Linux操作系统中的/var/spool/clientmqueue/目录下存在大量文件。


原因分析:系统中有用户开启了 cron,而cron中执行的程序有输出内容,输出内容会以邮件形式发给cron的用户,而sendmail没有启动所以就产生了这些文件;


解决办法:

1、 将crontab里面的命令后面加上  " > /dev/null 2>&1"

删除方法:

1.

# cd /var/spool/clientmqueue

# ls | xargs rm -f

2.

find /var/spool/clientmqueue/ -ctime +90 -type f -exec rm -fv {} \;


二.Linux下删除文件后没有释放空间

10.62

autoindex有这样的问题


***原因:

在Linux或者Unix系统中,通过rm或者文件管理器删除文件将会从文件系统的目录结构上解除链接(unlink).然而如果文件是被打开的(有一个进程正在使用),那么进程将仍然可以读取该文件,磁盘空间也一直被占用。

***解决办法:

1

/usr/sbin/lsof|grep deleted

2

kill 结束进程 的方式来释放