trích xuất từ 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)
CPU của tôi đã bị kẹt ở mức 99% trong vài giờ và tôi cho rằng đó là vì điều này. Có ai tình cờ biết đây là gì, nó bắt đầu như thế nào và làm thế nào để ngăn chặn nó?
EDIT: Tôi đã thử top -n1
và tôi thấy điều này trở lại nhiều lần:
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>
dòng này lặp lại khoảng 8 lần.
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
EDIT 3:
Sau khi khởi động lại, hệ thống trở lại như cũ 99% cpu usage
và top -n1
kết quả tương tự .
uname -a
và là lsb_release -a
gì?
fuser
lệnh có lẽ là rất ngắn ngủi. Nó dành thời gian sử dụng hết thời gian CPU (thời gian hệ thống, không phải thời gian của người dùng) để tạo / mua dữ liệu mà nó (tầm thường) tiêu thụ. Mỗi trường hợp fuser
có thể kết thúc rất nhanh. Nhưng nó có thể đang được chạy nhiều lần vì có, tôi cho rằng, nhiều tệp phiên trong đó. Con số 99,9% có lẽ chỉ có nghĩa là trường hợp fuser
CPU được sử dụng mạnh mẽ trước khi nó chết. find
có lẽ không phải là rất khó chịu về việc gặt hái trẻ em; nó chỉ có thể gọi waitpid
lại khi rời khỏi thư mục hoặc chạy fuser
lại.
user SMP Tue Feb 14 13:27:41 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
lsb_release -a: Không có mô-đun LSB nào khả dụng. ID nhà phân phối: Ubuntu Mô tả: Ubuntu 11.10 Phát hành: 11.10 Tên mã: mã
-execdir ... \;
sự chờ đợi phải ngay lập tức, vì mã trả về là cần thiết do kết quả của vị từ (tôi đã trộn cái này với -execdir ...+
cái luôn luôn trả về đúng, tôi nghĩ vậy).