Một vài quy trình của tôi tiêu thụ 100% cpu. Tôi đang cố gắng tìm ra kịch bản nào gây ra nó
Tôi đã thử chạy strace ps -ef
:
open("/proc/PID/status", O_RDONLY) = 6
read(6, "Name:\textract\nState:\tR (running)"..., 1023) = 1023
close(6) = 0
open("/proc/PID/cmdline", O_RDONLY) = 6
read(6,
Vì vậy, nó bị mắc kẹt khi cố gắng đọc /proc/PID/cmdline
. Tôi đã thử cat
điều đó, và nó lại bị mắc kẹt. Một cái gì đó rõ ràng là vặn trong hạt nhân; Tôi nên thử gì tiếp theo?
Lưu ý: khởi động lại không hoạt động - nếu tôi tắt thủ công, sự cố sẽ bắt đầu lại. Tôi đang sử dụng SUSE Linux Enterprise Server 11 (x86_64), Linux 2.6.27.19
Chỉnh sửa : ps -e
tạo đầu ra và tôi thấy có quá nhiều grep
s. Số lượng grep
s khác nhau: 250, 450, và bây giờ tôi thấy khoảng 520 greps. Tôi truy ngược lại và thấy nó là kết quả của một kịch bản cron. Tôi vẫn phải hiểu những kịch bản cron đó. Có, top
hiển thị kết quả. Chúng tôi tự tắt máy chủ 2 ngày trở lại. Hệ thống đã chạy từ 2 ngày qua. Tôi thấy một số công cụ tiên tri chạy mọi lúc. Tôi vừa làm bài kiểm tra bộ nhớ, không phát hiện ra lỗi
ps -e
sản xuất đầu ra? Thế còntop
? Hệ thống này đã chạy trong một thời gian dài, nó thường chạy là gì? Bạn đã thực hiện một bài kiểm tra trí nhớ gần đây? Không thể đọc/proc/$pid/cmdline
trông giống như một lỗi kernel hoặc khai thác.