提起find命令,大家一定不会陌生吧,相信大家经常会用到它.
没错,它就是用来查找指定文件或目录的命令.
但大家有没有想过利用find命令来帮助我们清除系统里的垃圾呢???
现在我就告诉大家一个很简单的方法,特别注明这是写给菜鸟的,大侠们就不用看啦,呵呵……
当我们在系统下运行某个程序出错的时候,系统会自动将残留在内存中的数据存成core文件,久而久之,系统中遗留下来的core会越来越多,就像灰尘一样散落在系统的每一个角落里,很是烦人。
这个时候,我们就可以应用find命令加上—exec参数来清理它们。
用root帐户登录系统,打开终端输入:
find / -name core -print -exec rm -rf {} \;
上述命令表示由根目录开始查找名为core的文件或目录,然后显示在屏幕上,之后再将所查到的结果全部删除。
最后提醒大家,在使用-exec参数时,必须以“\;”结尾,否则,系统会提示“find遗漏-exec参数”,命令将无法执行。
没错,它就是用来查找指定文件或目录的命令.
但大家有没有想过利用find命令来帮助我们清除系统里的垃圾呢???
现在我就告诉大家一个很简单的方法,特别注明这是写给菜鸟的,大侠们就不用看啦,呵呵……
当我们在系统下运行某个程序出错的时候,系统会自动将残留在内存中的数据存成core文件,久而久之,系统中遗留下来的core会越来越多,就像灰尘一样散落在系统的每一个角落里,很是烦人。
这个时候,我们就可以应用find命令加上—exec参数来清理它们。
用root帐户登录系统,打开终端输入:
find / -name core -print -exec rm -rf {} \;
上述命令表示由根目录开始查找名为core的文件或目录,然后显示在屏幕上,之后再将所查到的结果全部删除。
最后提醒大家,在使用-exec参数时,必须以“\;”结尾,否则,系统会提示“find遗漏-exec参数”,命令将无法执行。
用以下方法可以自动管理
经过查找发现其原因是内核中开启的审核子系统LauS (Linux Auditing System)写的日志太多,把/var空间占了,再次登陆的时候,由于无法写日志导致挂在那里,出现假死现象。
解决方法:
定位到问题以后,就可以想办法解决了,目前可行的办法由四种,分别如下:
1、定期手工删除/var/log/audit.d下的日志文件
#删除7天前的
find ./ -mtime +7 -type f -exec rm {} ;
2、配置crob自动删除或者备份
SEVEN_DAYS_OLD=`/usr/locale/ebin/date '+%d' --date '7 days ago'`
if [ -f /var/log/audit/bin/bin.${SEVEN_DAYS_OLD} ]
then
rm /var/log/audit/bin.${SEVEN_DAYS_OLD}
fi
3、修改/etc/audit/audit.conf配置文件
可以通过修改audit.conf来配置,让其自动处理
1)修改为自动删除的:
notify = "/usr/sbin/audbin -S /var/log/audit.d/save.%u -C -T 20% -N 'rm -f %f'";
[The notify line as above should (according to the docs) remove old 'save' files when the filesystem comes within 20% of full (change the figure after -T to specify how close to full you want to start deleting old files).]
2)修改为自动备份的:(/backup 是另外您想保存数据的分区)
notify = "/usr/sbin/audbin -S /var/log/audit.d/save.%u -C -T 20% -N 'mv %f /backup'";
4、禁用audtid服务
如 果您不需要审核信息,禁用audtid服务 ("chkconfig --del auditd"),系统性能会有所提高. 如果想要彻底禁用内核中的audit,可以删除 /dev/audit文件,重新启动。以后可以通过在grub.conf 里kernel行最后加入audit=1来启用。
解决方法:
定位到问题以后,就可以想办法解决了,目前可行的办法由四种,分别如下:
1、定期手工删除/var/log/audit.d下的日志文件
#删除7天前的
find ./ -mtime +7 -type f -exec rm {} ;
2、配置crob自动删除或者备份
SEVEN_DAYS_OLD=`/usr/locale/ebin/date '+%d' --date '7 days ago'`
if [ -f /var/log/audit/bin/bin.${SEVEN_DAYS_OLD} ]
then
rm /var/log/audit/bin.${SEVEN_DAYS_OLD}
fi
3、修改/etc/audit/audit.conf配置文件
可以通过修改audit.conf来配置,让其自动处理
1)修改为自动删除的:
notify = "/usr/sbin/audbin -S /var/log/audit.d/save.%u -C -T 20% -N 'rm -f %f'";
[The notify line as above should (according to the docs) remove old 'save' files when the filesystem comes within 20% of full (change the figure after -T to specify how close to full you want to start deleting old files).]
2)修改为自动备份的:(/backup 是另外您想保存数据的分区)
notify = "/usr/sbin/audbin -S /var/log/audit.d/save.%u -C -T 20% -N 'mv %f /backup'";
4、禁用audtid服务
如 果您不需要审核信息,禁用audtid服务 ("chkconfig --del auditd"),系统性能会有所提高. 如果想要彻底禁用内核中的audit,可以删除 /dev/audit文件,重新启动。以后可以通过在grub.conf 里kernel行最后加入audit=1来启用。
本文转自sucre03 51CTO博客,原文链接:http://blog.51cto.com/sucre/354520,如需转载请自行联系原作者