سؤال

على خادم الويب الخاص بي فيدورا كور 9 مع kernel 2.6.18، لا يجني init عمليات غيبوبة. سيكون هذا محتملا إذا لم يكن جدول العملية يصل في النهاية إلى الحد الأعلى حيث لا يمكن تخصيص عمليات جديدة.

إخراج عينة من ps -el | grep 'Z':

F S   UID   PID  PPID  C PRI  NI ADDR SZ WCHAN  TTY          TIME CMD
5 Z     0  2648     1  0  75   0 -     0 exit   ?        00:00:00 sendmail <defunct>
1 Z    51  2656     1  0  75   0 -     0 exit   ?        00:00:00 sendmail <defunct>
1 Z     0  2670     1  0  75   0 -     0 exit   ?        00:00:02 crond <defunct>
4 Z     0  2874     1  0  82   0 -     0 exit   ?        00:00:00 mysqld_safe <defunct>
5 Z     0 28104     1  0  76   0 -     0 exit   ?        00:00:00 httpd <defunct>
5 Z     0 28716     1  0  76   0 -     0 exit   ?        00:00:06 lfd <defunct>
5 Z    74 10172     1  0  75   0 -     0 exit   ?        00:00:00 sshd <defunct>
5 Z     0 11199     1  0  75   0 -     0 exit   ?        00:00:00 sendmail <defunct>
5 Z     0 11202     1  0  75   0 -     0 exit   ?        00:00:00 sendmail <defunct>
5 Z     0 11205     1  0  75   0 -     0 exit   ?        00:00:00 sendmail <defunct>
5 Z     0 11208     1  0  75   0 -     0 exit   ?        00:00:00 sendmail <defunct>
5 Z     0 11211     1  0  75   0 -     0 exit   ?        00:00:00 sendmail <defunct>
5 Z     0 11240     1  0  75   0 -     0 exit   ?        00:00:00 sendmail <defunct>
5 Z     0 11246     1  0  75   0 -     0 exit   ?        00:00:00 sendmail <defunct>
5 Z     0 11249     1  0  75   0 -     0 exit   ?        00:00:00 sendmail <defunct>
5 Z     0 11252     1  0  75   0 -     0 exit   ?        00:00:00 sendmail <defunct>
1 Z     0 14106     1  0  80   0 -     0 exit   ?        00:00:00 anacron <defunct>
5 Z     0 14631     1  0  75   0 -     0 exit   ?        00:00:00 sendmail <defunct>

هل هذا خطأ نظام التشغيل؟ سوء التفكير؟ أنا أبحث عن إلهام حول مصدر هذه المشكلة. شكرا

هل كانت مفيدة؟

المحلول

هذا ضربني على أوبونتو بطريقتين:

  1. خطأ ما في النواة. في حالتي، تحطمت سائق النواة ومعالجات ذهبت Internals Bonkers. أفضل طريقة لاختبار هذا هو التحقق / var / log / syslog (و dmesg) لمعرفة ما إذا كان أي شيء يبدو رائعا - على سبيل المثال "BUG: غير قادر على التعامل مع Dereference مؤشر Null Null في 0000000000000028"،

  2. في المرة الأخرى التي رأيتها، هذا هو عندما لا يكون INIT هو "الوالد من عملية الطفل لمعظم الأغراض" (اقتباس manepage الفعلي). يمكن أن يحدث هذا عند استخدام PTTRACE SYSCALL (الذي يستخدمه البرنامج السترس داخليا) لإرفاقه في عملية. على سبيل المثال، حصلت على موقف أرفق فيه السترس لعملية الطفل ب. في النهاية، يتم إنهاء العملية B كما يفعل الوالد (غير متأكد من ترتيب). العملية باء ذلك يبدو وكأنه غيبوبة مملوكة من قبل init. ومع ذلك، فإن الوالد "معظم أغراض" كان في الواقع البرنامج الستر. بعد قتل الستر، تم إعادة عملية B

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top