Junior
Какъв сигнал се изпраща при използване на командата kill: SIGTERM или SIGKILL?
sobes.tech AI
Отговор от AI
Когато използвате командата kill без да посочите номер или име на сигнал, по подразбиране се изпраща сигналът SIGTERM.
SIGTERM (Сигнал за прекратяване):
- Това е мек сигнал за прекратяване.
- Той моли процеса да се прекрати правилно.
- Процесът може да улови този сигнал, да извърши почистване (затваряне на файлове, запазване на състояние) и след това да приключи, или да го игнорира.
SIGKILL (Сигнал за принудително прекратяване):
- Това е "твърд" сигнал за прекратяване.
- Не може да бъде уловен или игнориран от процеса.
- Системата незабавно прекратява процеса, без да му даде възможност за почистване.
Затова kill по подразбиране изпраща SIGTERM. За да изпратите SIGKILL, трябва да го посочите явно:
# Изпрати SIGTERM (по подразбиране)
kill <PID>
# Изпрати SIGKILL
kill -9 <PID>
# или
kill -s SIGKILL <PID>