วิธียุติกระบวนการที่ไม่ตอบสนองใน Linux ด้วย kill และ pkill

วิธียุติกระบวนการที่ไม่ตอบสนองใน Linux ด้วย kill และ pkill

การจัดการกับโปรแกรมที่ไม่ตอบสนองอาจเป็นงานที่ยุ่งยาก โดยเฉพาะอย่างยิ่งหากคุณใช้ฮาร์ดแวร์รุ่นเก่า ในกรณีดังกล่าว การหยุดทำงานของระบบจะกลายเป็นปัญหาทั่วไป โชคดีที่มีหลายวิธีในการฆ่ากระบวนการที่ไม่ตอบสนองใน Linux





คำสั่ง kill และ pkill ให้โซลูชันที่เรียบง่ายแต่มีประสิทธิภาพในการยุติกระบวนการซอมบี้ที่ไม่ตอบสนองจากเทอร์มินัล ส่วนด้านล่างอธิบายวิธีการฆ่ากระบวนการที่ค้างใน Linux โดยใช้ kill และ pkill





ยุติกระบวนการที่ไม่ตอบสนองโดยใช้ kill

คำสั่ง kill ใน Linux ช่วยให้คุณออกจากกระบวนการที่ไม่ตอบสนองได้อย่างง่ายดาย จะส่งสัญญาณสิ้นสุดไปยังกระบวนการ โดยค่าเริ่มต้น kill จะส่ง SIGTERM สัญญาณแสดงด้วยหมายเลขสัญญาณ สิบห้า . ตัวอย่างต่อไปนี้ใช้ kill เพื่อหยุดกระบวนการที่มี PID 27065





kill 27065

ผู้ใช้สามารถส่งสัญญาณอื่นๆ โดยระบุชื่อหรือหมายเลขสัญญาณ ตัวอย่างเช่น คำสั่ง kill ด้านล่างจะหยุดกระบวนการซอมบี้โดยใช้คำสั่ง ซิกคิลล์ สัญญาณระบบ แสดงด้วยหมายเลขสัญญาณ 9 .

kill -9 27065
kill -SIGKILL 27065

ความแตกต่างระหว่าง SIGTERM และ SIGKILL คือกระบวนการสามารถจับและละเว้นสัญญาณ SIGTERM ได้ แต่ SIGKILL มีภูมิคุ้มกันต่อการจัดการกระบวนการและฆ่าโปรแกรมทันที



คุณสามารถดูรายการสัญญาณที่มีอยู่ทั้งหมดได้โดยใช้คำสั่ง kill ด้านล่าง

kill -l
kill -L

โดยรวมแล้ว SIGKILL จะเหมาะสมกว่าเมื่อ การจัดการกับกระบวนการของระบบที่ไม่ตอบสนอง . ในทางกลับกัน SIGTERM เป็นวิธีที่จะไปหากคุณต้องการยุติโปรแกรมที่หยุดทำงานอย่างงดงาม





การตั้งค่าการนอนหลับของ windows 10 ไม่ทำงาน

ฆ่ากระบวนการที่ไม่ตอบสนองโดยใช้ pkill

คำสั่ง pkill ทำให้กระบวนการยุติใน Linux ง่ายขึ้นโดยอนุญาตให้เราฆ่าโปรแกรมตามชื่อของพวกเขา ตัวอย่างเช่น คำสั่งด้านล่างฆ่า นาโน โปรแกรมที่ใช้ pkill

pkill nano

เช่นเดียวกับการฆ่า pkill ยังส่งสัญญาณ SIGTERM ตามค่าเริ่มต้น ใช้สัญญาณ SIGKILL หากคุณต้องการหยุดกระบวนการที่ไม่ตอบสนองทันที





pkill -9 nano

วิธีรับ ID กระบวนการ (PID) ของกระบวนการ

การมีข้อมูล PID สามารถช่วยได้มากเมื่อยุติกระบวนการที่ไม่ตอบสนองใน Linux คุณสามารถรับหมายเลข PID ของกระบวนการได้หลายวิธี คำสั่งต่อไปนี้ดึงข้อมูล PID ของกระบวนการชื่อ nano โดยใช้ คำสั่ง grep และป.ล.

ps aux | grep nano

คุณยังสามารถใช้คำสั่ง pgrep ซึ่งจะแยก ID กระบวนการออกโดยตรง

ดาวน์โหลดภาพยนตร์ฟรีไปยังโทรศัพท์ของฉัน
pgrep nano

การจัดการกระบวนการที่ไม่ตอบสนองบน Linux

คำสั่ง kill และ pkill ทำให้การจัดการกับกระบวนการที่ไม่ตอบสนองใน Linux เป็นเรื่องง่าย สิ่งที่คุณต้องทำเพื่อหยุดกระบวนการซอมบี้ก็คือ PID และการเข้าถึงเชลล์ อย่างไรก็ตาม คุณอาจต้องมีสิทธิ์ sudo เพิ่มเติมเมื่อฆ่ากระบวนการที่เป็นของผู้ใช้รายอื่น ดังนั้น หากคุณอยู่ในระบบที่มีผู้ใช้หลายคน โปรดขอให้ผู้ดูแลระบบเพิ่มคุณในรายการ sudoers ก่อนที่คุณจะดำเนินการใดๆ

แบ่งปัน แบ่งปัน ทวีต อีเมล วิธีเพิ่มผู้ใช้ในรายการ Sudoers ใน Linux

ต้องการให้สิทธิ์ผู้ดูแลระบบแก่ผู้ใช้ Linux หรือไม่? วิธีเพิ่มผู้ใช้ในรายการ sudoers มีดังนี้

อ่านต่อไป
หัวข้อที่เกี่ยวข้อง
  • ลินุกซ์
  • คำสั่งลินุกซ์
  • การดูแลระบบ
เกี่ยวกับผู้เขียน รูบายัต โฮสเซน(39 บทความเผยแพร่)

Rubaiat เป็น CS grad ที่มีความหลงใหลในโอเพ่นซอร์สอย่างมาก นอกเหนือจากการเป็นทหารผ่านศึก Unix แล้ว เขายังเป็นผู้เชี่ยวชาญด้านความปลอดภัยเครือข่าย การเข้ารหัส และการเขียนโปรแกรมเชิงฟังก์ชันอีกด้วย เขาเป็นนักสะสมหนังสือมือสองและชื่นชอบดนตรีร็อคคลาสสิกอย่างไม่สิ้นสุด

เพิ่มเติมจาก Rubaiat Hossain

สมัครรับจดหมายข่าวของเรา

เข้าร่วมจดหมายข่าวของเราสำหรับเคล็ดลับทางเทคนิค บทวิจารณ์ eBook ฟรี และดีลพิเศษ!

คลิกที่นี่เพื่อสมัครสมาชิก