Giunsa Pagpatay ang Proseso sa Linux Gamit ang Kill, Pkill, ug Killall
Ang Linux Operating System adunay usa ka kill command aron tapuson ang usa ka proseso. Ang mando nagpaposible sa pagpadayon sa pagpadagan sa server nga wala kinahanglana nga mag-reboot pagkahuman sa usa ka dako nga pagbag-o/pag-update. Dinhi moabut ang dako nga gahum sa Linux ug kini usa sa mga hinungdan, ngano nga ang Linux nagdagan sa 96.4% sa mga server, sa planeta.
Ang Kill command nagpadala ug signal, usa ka espesipikong signal sa usa ka proseso nga nagdagan karon. Ang kill command mahimong ipatuman sa daghang paagi, direkta o gikan sa shell script.
[ Basin ganahan ka: Pangitaa ang Top 15 nga Proseso pinaagi sa Memory Usage nga adunay 'top' sa Batch Mode ]
Ang paggamit sa kill command gikan sa /usr/bin naghatag kanimo og dugang nga bahin sa pagpatay sa usa ka proseso pinaagi sa ngalan sa proseso gamit ang pkill.
Ang kasagarang syntax alang sa kill command mao ang:
# kill [signal or option] PID(s)
Alang sa usa ka kill command ang usa ka Signal Name mahimong:
Signal Name Signal Value Behaviour SIGHUP 1 Hangup SIGKILL 9 Kill Signal SIGTERM 15 Terminate
Klaro gikan sa pamatasan sa ibabaw, ang SIGTERM mao ang default ug labing luwas nga paagi sa pagpatay sa usa ka proseso. Ang SIGHUP usa ka dili kaayo luwas nga paagi sa pagpatay sa usa ka proseso kaysa SIGTERM. Ang SIGKILL mao ang labing dili luwas nga paagi taliwala sa tulo nga naa sa itaas, aron mapatay ang usa ka proseso nga nagtapos sa usa ka proseso nga wala’y pagtipig.
Aron mapatay ang usa ka proseso, kinahanglan naton mahibal-an ang Proseso ID sa usa ka proseso. Ang Proseso usa ka pananglitan sa usa ka programa. Matag higayon nga magsugod ang usa ka programa, awtomatik nga usa ka talagsaon nga PID ang mamugna alang niana nga proseso.
Matag Proseso sa Linux adunay pid. Ang una nga proseso nga nagsugod kung ang Linux System gi-boot mao ang - init nga proseso, busa gihatagan kini usa ka kantidad nga '1' sa kadaghanan nga mga kaso.
[ Tingali ganahan ka usab: Tanan nga Kinahanglan Nimong Mahibal-an Bahin sa Mga Proseso sa Linux [Komprehensibo nga Giya] ]
Ang Init mao ang master nga proseso ug dili mapatay niining paagiha, nga nagsiguro nga ang master nga proseso dili aksidenteng mapatay. Ang Init nagdesisyon ug nagtugot sa kaugalingon nga patyon, diin ang pagpatay usa lamang ka hangyo alang sa pagsira.
Ilista ang Tanan nga Nagdagan nga Mga Proseso sa Linux
Aron mahibal-an ang tanan nga mga proseso ug katugbang sa ilang gi-assign nga pid, padagana ang mosunod nga ps command.
# 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
Giunsa ang Pag-customize sa naa sa taas nga output gamit ang syntax ingon 'proseso sa pidof'.
# pidof mysqld
1684
Ang laing paagi aron makab-ot ang tumong sa ibabaw mao ang pagsunod sa ubos nga syntax.
# 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
[ Tingali ganahan ka usab: Giunsa Pagpangita Top 15 nga Proseso pinaagi sa Paggamit sa Memorya sa Linux ]
Giunsa Pagpatay ang usa ka Proseso sa Linux
Sa dili pa kita mopadayon ug ipatuman ang usa ka kill command, pipila ka importanteng punto nga angay hinumdoman:
- Ang usa ka user makapatay sa tanan niyang mga proseso.
- Ang usa ka user dili makapatay sa proseso sa laing user.
- Ang user dili makapatay sa mga proseso nga gigamit sa System.
- Ang usa ka root user mahimong makapatay sa System-level-process ug ang proseso sa bisan kinsang user.
Ang laing paagi sa paghimo sa sama nga function mao ang pagpatuman sa 'pgrep' nga sugo.
# pgrep mysql
3139
Aron mapatay ang proseso sa ibabaw nga PID, gamita ang kill command sama sa gipakita.
kill -9 3139
Ang sugo sa ibabaw mopatay sa proseso nga adunay pid=3139, diin ang PID usa ka Numerical Value sa proseso.
Ang laing paagi sa paghimo sa sama nga function mahimong isulat pag-usab ingon.
# kill -SIGTERM 3139
Susama ang 'kill -9 PID' susama sa 'kill -SIGKILL PID' ug vice-versa.
Giunsa Pagpatay ang usa ka Proseso sa Linux Gamit ang Ngalan sa Proseso
Kinahanglan nga nahibal-an nimo ang ngalan sa proseso, sa wala pa ang pagpatay ug pagsulod sa usa ka sayup nga ngalan sa proseso mahimo’g madaot ka.
# pkill mysqld
Pagpatay labaw sa usa ka proseso sa usa ka higayon.
# kill PID1 PID2 PID3 or # kill -9 PID1 PID2 PID3 or # kill -SIGKILL PID1 PID2 PID3
Unsa kaha kung ang usa ka proseso adunay daghang mga higayon ug daghang mga proseso sa bata, kami adunay usa ka mando nga 'kill' o pkill. Kining duha mao lamang ang mga sugo niini nga pamilya, nga nagkuha sa ngalan sa proseso isip argumento sa dapit sa numero sa proseso.
# killall [signal or option] Process Name Or # pkill Process Name
Aron mapatay ang tanan nga mysql nga mga higayon kauban ang mga proseso sa bata, gamita ang mando sama sa pagsunod.
# killall mysqld OR # pkill mysqld
Mahimo nimo kanunay nga mapamatud-an ang kahimtang sa proseso kung kini nagdagan o wala, gamit ang bisan unsang mga mando sa ubos.
# service mysql status OR # systemctl status mysql # pgrep mysql # ps -aux | grep mysql
Kana lang sa pagkakaron, gikan sa akong kilid. Sa dili madugay makaanhi na usab ako uban ang lain nga Interesante ug Informative nga hilisgutan. Hangtud Unya, magpabilin nga tuned, konektado sa Tecmint, ug himsog. Ayaw kalimti ang paghatag sa imong bililhon nga feedback sa seksyon sa komento.