Linux: Завершення зомбі-процесу в середовищах Linux

Summary: Що таке зомбі-процес, як його знайти і як вбити або припинити.

Acest articol se aplică pentru Acest articol nu se aplică pentru Acest articol nu este legat de un produs specific. Acest articol nu acoperă toate versiunile de produs existente.

Instructions

Що таке зомбі-процес:
Це процес, який завершився, але не весь його одразу видаляється з пам'яті, оскільки його опис процесу залишається в пам'яті.

Якою має бути нормальна поведінка процесу:
Коли процес завершується, його статус стає EXIT_ZOMBIE а батько процесу отримує повідомлення, що його дочірній процес припинив роботу разом із SIGCHLD Сигнал

.Тоді батьківський процес має виконувати wait() для системного виклику для зчитування статусу виходу мертвого процесу та іншої інформації. Після wait() називається, зомбі-процес видаляється з пам'яті. Це відбувається швидко, тому ви не бачите накопичення зомбі-процесів у вашій системі. Але у випадках, коли ми бачимо накопичення кількох зомбі-процесів, це ситуація, коли програмний код не є ефективним.

Як знайти зомбі-процеси:
Виконання команди top
результати з Top Command

Виконання команди ps -ef | grep defunct
Наслідок припинення командування

Як припинити накопичення зомбі-процесів:
Зазвичай зомбі-процеси мають однаковий батьківський ID

.Існує два способи усунення процесу:
  • Надішліть SIGCHLD сигнал для батьківського процесу.
Цей сигнал повідомляє батьківському процесу виконати wait() Системний дзвінок і прибери своїх зомбі-дітей:
kill -s SIGCHLD <PPID>
Приклад:
kill -s SIGCHLD 2201
  • Процес знищення зомбі-батьків
kill -9 <PPID>
Приклад:
kill -9 2201

Produse afectate

SUSE Linux Enterprise Server 12, Red Hat Enterprise Linux Version 7, Red Hat Enterprise Linux Version 9, Red Hat Enterprise Linux Version 8, SUSE Linux Enterprise Server 15, Ubuntu Server LTS
Proprietăți articol
Article Number: 000019108
Article Type: How To
Ultima modificare: 03 Feb 2026
Version:  5
Găsiți răspunsuri la întrebările dvs. de la alți utilizatori Dell
Servicii de asistență
Verificați dacă dispozitivul dvs. este acoperit de serviciile de asistență.