Sobes.tech
Junior

Kāds signāls tiek nosūtīts, izmantojot komandu kill: SIGTERM vai SIGKILL?

sobes.tech AI

Atbilde no AI

Izmantojot komandu kill bez signāla numura vai nosaukuma, pēc noklusējuma tiek nosūtīts signāls SIGTERM.

SIGTERM (Beigu signāls):

  • Tas ir maigais beigu signāls.
  • Tas lūdz procesam pareizi beigt darbu.
  • Process var šo signālu uztvert, veikt tīrīšanu (aizvērt failus, saglabāt stāvokli) un pēc tam beigt vai ignorēt.

SIGKILL (Nepārvarama beigu signāls):

  • Tas ir "ciets" beigu signāls.
  • To nevar uztvert vai ignorēt procesā.
  • Sistēma nekavējoties pārtrauc procesu, nesniedzot tam iespēju veikt tīrīšanu.

Tādēļ kill pēc noklusējuma nosūta SIGTERM. Lai nosūtītu SIGKILL, to jānorāda skaidri:

# Nosūtīt `SIGTERM` (noklusējums)
kill <PID>

# Nosūtīt `SIGKILL`
kill -9 <PID>
# vai
kill -s SIGKILL <PID>