извлечь из 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)
Мой процессор завис на 99% в течение нескольких часов, и я предполагаю, что это из-за этого. Кто-нибудь знает, что это такое, как это началось и как это остановить?
РЕДАКТИРОВАТЬ: Я пытался, top -n1
и я вижу это взамен несколько раз:
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>
эта строка повторяется около 8 раз.
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
РЕДАКТИРОВАТЬ 3:
После перезагрузки система вернулась к тому же 99% cpu usage
и тому же top -n1
результату.
uname -a
и lsb_release -a
?
fuser
вероятно, очень недолгая. Он тратит свое время, тратя время ЦП (системное время, а не пользовательское), генерируя / proc данные, которые он (тривиально) потребляет. Каждый экземпляр, fuser
вероятно, заканчивается очень быстро. Но, вероятно, он запускается много раз, поскольку, я полагаю, там много файлов сессий. Число 99,9%, вероятно, просто означает, что этот экземпляр fuser
интенсивно использовал процессор, прежде чем он умер. find
вероятно, не очень агрессивен в отношении пожирания детей; Скорее всего, он будет вызываться waitpid
снова только при выходе из каталога или при fuser
повторном запуске .
user SMP Tue Feb 14 13:27:41 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
lsb_release -a: Модули LSB недоступны. Идентификатор распространителя: Ubuntu Описание: Ubuntu 11.10 Релиз: 11.10 Кодовое имя: код
-execdir ... \;
ожидание должно быть немедленным, поскольку в качестве результата предиката необходим код возврата (я смешивал это с тем, -execdir ...+
что всегда возвращает true, я думаю).