Sobes.tech
Junior

Ce semnal este trimis atunci când se utilizează comanda kill: SIGTERM sau SIGKILL?

sobes.tech AI

Răspuns de la AI

Atunci când utilizați comanda kill fără a specifica numărul sau numele semnalului, se trimite implicit semnalul SIGTERM.

SIGTERM (Semnal de terminare):

  • Este un semnal de terminare blând.
  • Solicită procesului să se termine corect.
  • Procesul poate captura acest semnal, efectua curățenie (închide fișiere, salvează stare) și apoi să se termine, sau să îl ignore.

SIGKILL (Semnal de ucidere):

  • Este un semnal de terminare "dur".
  • Nu poate fi capturat sau ignorat de proces.
  • Sistemul termină imediat procesul, fără a-i oferi posibilitatea de a face curățenie.

Prin urmare, kill trimite implicit SIGTERM. Pentru a trimite SIGKILL, trebuie specificat explicit:

# Trimite SIGTERM (implicit)
kill <PID>

# Trimite SIGKILL
kill -9 <PID>
# sau
kill -s SIGKILL <PID>