Sobes.tech
Intern

Kuidas lõpetada protsess?

sobes.tech AI

Vastus AI-lt

Linuxis saab protsesse lõpetada käskudega kill, pkill või killall.

1. Kasutades kill:

  • Lõpetab protsessi selle Process ID (PID) abil.
  • Vajalik on teada PID.
  • Signaalid:
    • SIGTERM (vaikimisi, 15): Õrn lõpetamine, võimaldab protsessil korrektselt lõpetada.
    • SIGKILL (9): Kohene ja sunniviisiline lõpetamine, protsess ei saa seda signaali ignoreerida.
# PID leidmine
ps aux | grep <protsessi_nimi>

# Saata `SIGTERM` signaal (vaikimisi)
kill <PID>

# Saata `SIGKILL` signaal
kill -9 <PID>

2. Kasutades pkill:

  • Lõpetab protsessid nende nime või teiste atribuutide järgi.
  • Ei nõua PID teadmist.
  • Toetab mustreid.
# Kõigi 'nginx' nimega protsesside lõpetamine
pkill nginx

# Kõigi 'myapp' nimega protsesside lõpetamine (tõstetud suur- ja väiketähti arvesse võttes)
pkill -i myapp

# Saata `SIGKILL` signaal 'firefox' nimega protsessidele
pkill -9 firefox

3. Kasutades killall:

  • Lõpetab protsessid ainult nende täpse nime järgi.
  • Ei toeta keerukaid mustreid, erinevalt pkill-ist.
# Lõpetada kõik protsessid täpse nimega 'apache2'
killall apache2

# Saata `SIGKILL` signaal 'mysqld' nimega protsessidele
killall -9 mysqld

Valiku tegemine:

Käsk Lõpetamise meetod Nõuab PID Mustrite tugi
kill PID kaudu Jah Ei
pkill Nime või atribuudi järgi Ei Jah
killall Täpse nime järgi Ei Ei

Enamikel juhtudel on soovitatav esmalt proovida protsessi lõpetada SIGTERM-iga (kill <PID>, pkill <nimi>), andes talle võimaluse andmeid salvestada ja korrektselt lõpetada. SIGKILL (kill -9, pkill -9, killall -9) tuleks kasutada ainult viimase abinõuna, kui protsess ei reageeri teistele signaalidele.