巧用find命令清除系统垃圾

提起find命令,大家一定不会陌生吧,相信大家经常会用到它.
没错,它就是用来查找指定文件或目录的命令.

但大家有没有想过利用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来启用。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值