服务器升级到ubuntu 11.10后,经过一段时间的运行,突然发行服务器巨慢,很多软件的log里都提示内存不足,无法fork新进程。远程登录上发现其中有一个进程fuser,占据了大部分的CPU使用时间。
网上搜索后,发现了是PHP5中运行一段时间后会在CRON中执行一段代码而导致产生的问题,在12.04版本中应该已经修复。
具体可以参加以下几个链接:
1. Fuser high CPU usage
2. fuser forking uncontrollably in cron job
修复办法:
直接修改/etc/cron.d/php5文件,让其恢复为11.04的处理方法:
09,39 * * * * root [ -x /usr/lib/php5/maxlifetime ] && [ -d /var/lib/php5 ] && find /var/lib/php5/ -depth -mindepth 1 -maxdepth 1 -type f -cmin +$(/usr/lib/php5/maxlifetime) -delete
当然,也可以等待12.04发布后升级psmisc包。
发表回复