Kif Toqtol il-Proċess tal-Linux billi tuża Kill, Pkill, u Killall


Sistema Operattiva Linux tiġi flimkien ma 'kmand qatla biex itemm proċess. Il-kmand jagħmilha possibbli li tkompli taħdem is-server mingħajr il-ħtieġa li terġa 'tibda wara bidla/aġġornament maġġuri. Hawnhekk tidħol il-qawwa kbira tal-Linux u din hija waħda mir-raġunijiet, għaliex Linux qed jaħdem fuq 96.4% tas-servers, fuq il-pjaneta.

Il-kmand tal-qtil jibgħat sinjal, sinjal speċifikat għal proċess li għaddej bħalissa. Il-kmand tal-qtil jista 'jiġi eżegwit f'numru ta' modi, direttament jew minn script shell.

[ Jista' jkun li jħobb ukoll: Sib l-Ewwel 15-il Proċess skont l-Użu tal-Memorja b''top' fil-Modalità Batch ]

L-użu tal-kmand tal-qatla minn /usr/bin jagħtik xi karatteristika żejda biex toqtol proċess bl-isem tal-proċess billi tuża pkill.

Is-sintassi komuni għall-kmand tal-qtil hija:

# kill [signal or option] PID(s)

Għal kmand tal-qtil Isem tas-Sinjal jista' jkun:

Signal Name		Signal Value			Behaviour

SIGHUP			      1				Hangup
SIGKILL			      9				Kill Signal
SIGTERM			      15			Terminate

B'mod ċar mill-imġieba ta 'hawn fuq, SIGTERM huwa l-mod awtomatiku u l-aktar sikur biex jinqatel proċess. SIGHUP huwa mod inqas sigur ta' qtil ta' proċess minn SIGTERM. SIGKILL huwa l-aktar mod perikoluż fost it-tlieta ta 'hawn fuq, biex jinqatel proċess li jtemm proċess mingħajr ma jsalva.

Sabiex noqtlu proċess, irridu nkunu nafu l-ID tal-Proċess ta 'proċess. Proċess huwa eżempju ta 'programm. Kull darba li jibda programm, awtomatikament jiġi ġġenerat PID uniku għal dak il-proċess.

Kull Proċess fil-Linux għandu pid. L-ewwel proċess li jibda meta tinbeda l-Linux System huwa l-proċess – init, għalhekk huwa assenjat valur ta’ ‘1’ f’ħafna każijiet.

[ Jista' jħobb ukoll: Kulma Trid Tkun Taf Dwar il-Proċessi fil-Linux [Gwida Komprensiva] ]

Init huwa l-proċess prinċipali u ma jistax jinqatel b'dan il-mod, li jiżgura li l-proċess prinċipali ma jinqatelx aċċidentalment. Init jiddeċiedi u jħalli lilu nnifsu jinqatel, fejn il-qatla hija sempliċement talba għal għeluq.

Elenka l-Proċessi kollha tal-Linux Running

Biex tkun taf il-proċessi kollha u b'mod korrispondenti l-pid assenjat tagħhom, mexxi l-kmand ps li ġej.

# ps -A
PID TTY          TIME CMD
    1 ?        00:00:01 init
    2 ?        00:00:00 kthreadd
    3 ?        00:00:00 migration/0
    4 ?        00:00:00 ksoftirqd/0
    5 ?        00:00:00 migration/0
    6 ?        00:00:00 watchdog/0
    7 ?        00:00:01 events/0
    8 ?        00:00:00 cgroup
    9 ?        00:00:00 khelper
   10 ?        00:00:00 netns
   11 ?        00:00:00 async/mgr
   12 ?        00:00:00 pm
   13 ?        00:00:00 sync_supers
   14 ?        00:00:00 bdi-default
   15 ?        00:00:00 kintegrityd/0
   16 ?        00:00:00 kblockd/0
   17 ?        00:00:00 kacpid
   18 ?        00:00:00 kacpi_notify
   19 ?        00:00:00 kacpi_hotplug
   20 ?        00:00:00 ata/0
   21 ?        00:00:00 ata_aux
   22 ?        00:00:00 ksuspend_usbd

Kif dwar Customizing l-output ta 'hawn fuq bl-użu tas-sintassi bħala proċess pidof.

# pidof mysqld
1684

Mod ieħor biex jintlaħaq l-għan ta 'hawn fuq huwa li ssegwi s-sintassi ta' hawn taħt.

# ps aux | grep mysqld
root      1582  0.0  0.0   5116  1408 ?        S    09:49   0:00 
/bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql 
--socket=/var/lib/mysql/mysql.sock --pid-file=/var/run/mysqld/mysqld.pid 
--basedir=/usr --user=mysql

mysql     1684  0.1  0.5 136884 21844 ?        Sl   09:49   1:09 
/usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql 
--log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid 
--socket=/var/lib/mysql/mysql.sock

root     20844  0.0  0.0   4356   740 pts/0    S+   21:39   
0:00 grep mysqld

[ Tista 'tħobb ukoll: Kif issib l-aqwa 15-il proċess skont l-użu tal-memorja fil-Linux ]

Kif Toqtol Proċess fil-Linux

Qabel ma nimxu 'l quddiem u nwettqu kmand tal-qtil, għandhom jiġu nnotati xi punti importanti:

  • Utent jista' joqtol il-proċessi kollha tiegħu.
  • Utent ma jistax joqtol il-proċess ta' utent ieħor.
  • Utent ma jistax joqtol proċessi li s-Sistema qed tuża.
  • Utent root jista' joqtol il-proċess fil-livell tas-Sistema u l-proċess ta' kwalunkwe utent.

Mod ieħor biex twettaq l-istess funzjoni huwa li tesegwixxi l-kmand 'pgrep'.

# pgrep mysql
3139

Biex toqtol il-proċess PID ta 'hawn fuq, uża l-kmand tal-qtil kif muri.

kill -9 3139

Il-kmand ta 'hawn fuq joqtol il-proċess li jkollu pid=3139, fejn PID huwa Valur Numeriku tal-proċess.

Mod ieħor biex twettaq l-istess funzjoni jista 'jinkiteb mill-ġdid bħala.

# kill -SIGTERM 3139

Bl-istess mod 'qatla -9 PID' hija simili għal 'qatla -SIGKILL PID' u viċi versa.

Kif Toqtol Proċess fil-Linux billi tuża Isem tal-Proċess

Int trid tkun konxju ta 'l-isem tal-proċess, qabel ma toqtol u ddaħħal isem proċess ħażin jista' kamin inti.

# pkill mysqld

Oqtol aktar minn proċess wieħed kull darba.

# kill PID1 PID2 PID3
or
# kill -9 PID1 PID2 PID3
or
# kill -SIGKILL PID1 PID2 PID3

X'jiġri jekk proċess ikollu wisq każijiet u numru ta 'proċessi tfal, ikollna kmand 'killall' jew pkill. Dawn it-tnejn huma l-uniċi kmandi ta 'din il-familja, li tieħu l-isem tal-proċess bħala argument minflok in-numru tal-proċess.

# killall [signal or option] Process Name
Or
# pkill Process Name

Biex toqtol l-istanzi kollha tal-mysql flimkien mal-proċessi tat-tfal, uża l-kmand kif ġej.

# killall mysqld
OR
# pkill mysqld

Tista 'dejjem tivverifika l-istatus tal-proċess jekk ikunx qed jaħdem jew le, billi tuża kwalunkwe mill-kmandi ta' hawn taħt.

# service mysql status
OR
# systemctl status mysql
# pgrep mysql
# ps -aux | grep mysql

Dak kollu għalissa, min-naħa tiegħi. Dalwaqt se nerġa' nkun hawn b'suġġett ieħor Interessanti u Informattiv. Sa dakinhar, ibqa' sintonizzat, imqabbad ma' Tecmint, u b'saħħtu. Tinsiex tagħti l-feedback siewi tiegħek fit-taqsima tal-kummenti.