extracto de syslog
:
CRON[pid]: (user) CMD ( [ -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) ! -
execdir fuser -s {} 2>/dev/null \; -delete)
Mi CPU se ha quedado atascada al 99% durante unas pocas horas, y supongo que es por esto. ¿Alguien sabría qué es esto, cómo comenzó y cómo detenerlo?
EDITAR: Lo intenté top -n1
y veo esto a cambio varias veces:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
PID user 20 0 0 0 0 Z 99.9 0.0 0:00.00 fuser <defunct>
Esta línea se repite aproximadamente 8 veces.
EDIT2:
uname-a:
user SMP Tue Feb 14 13:27:41 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux`
lsb_release -a:
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 11.10
Release: 11.10
Codename: code
EDITAR 3:
Después de reiniciar, el sistema volvió al mismo 99% cpu usage
y al mismo top -n1
resultado.
uname -a
ylsb_release -a
?fuser
comando es probablemente de muy corta duración. Pasa su tiempo usando el tiempo de CPU (tiempo del sistema, no el tiempo del usuario) generando / procesando datos que (trivialmente) consume. Cada instancia defuser
probablemente termina muy rápidamente. Pero probablemente se esté ejecutando muchas veces ya que hay, supongo, muchos archivos de sesión allí. La cifra del 99.9% probablemente solo significa que esa instancia defuser
CPU usada de forma intensiva antes de morir.find
probablemente no sea muy agresivo al cosechar niños; probablemente volverá a llamarwaitpid
solo cuando salga de un directorio o se ejecutefuser
nuevamente.user SMP Tue Feb 14 13:27:41 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
lsb_release -a: no hay módulos LSB disponibles. ID de distribuidor: Ubuntu Descripción: Ubuntu 11.10 Lanzamiento: 11.10 Nombre en clave: código-execdir ... \;
la espera debe ser inmediata, ya que el código de retorno es necesario como resultado del predicado (estaba mezclando esto con lo-execdir ...+
que siempre devuelve verdadero, creo).Respuestas:
Este es un trabajo cron que limpia los archivos de sesión antiguos de / var / lib / php5 /. Si se cuelga en un 99%, tal vez debería revisar la carpeta de destino (/ var / lib / php5 /) para ver una cantidad excesiva de archivos o incluso corrupción del sistema de archivos.
El proceso se inicia desde crontab. Vea los listados de crontab (descritos aquí ). Puede matar el proceso y eliminarlo de crontab, pero es más probable que tenga un problema subyacente, como una cantidad excesiva de archivos que deben repararse.
fuente
Encontré la respuesta aquí: http://www.flynsarmy.com/2011/11/fuser-using-100-cpu-in-ubuntu-11-10/
en
/etc/cron.d/php5 on Ubuntu 11.10:
Reemplazar
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) ! -execdir fuser -s {} 2>/dev/null \; -delete
Con
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
fuente