วิธีการระบุและฆ่ากระบวนการหยุดทำงานเมื่อระบบหยุดทำงานและตอบสนองช้าในการป้อนข้อมูลของผู้ใช้?


24

เมื่อเร็ว ๆ นี้เมื่อฉันพยายามเปิดวิดีโอด้วย VLC ระบบของฉันช้าลงเว็บเบราเซอร์แอปพลิเคชันแบบเปิด VLC และตัวจัดการไฟล์และอื่น ๆ ไม่ตอบสนองอีกต่อไป หนูเพิ่งตอบสนองช้ามาก

บนเครื่อง windows ฉันจะกด keycombi CTRL-ALT-DEL เพื่อเปิด taskmanager ค้นหากระบวนการที่ทำให้แฮงค์และฆ่ามัน

ตั้งแต่ฉันค่อนข้างใหม่กับการใช้ linux ฉันไม่ได้คิดวิธีปฏิบัติที่ดีที่สุดในการแก้ไขสถานการณ์เช่นนี้ใน Ubuntu

วิธีใดที่รวดเร็วและมีประสิทธิภาพที่คุณจะแนะนำให้ระบุกระบวนการหยุดและปิดเมื่อระบบตอบสนองช้ามากในการป้อนข้อมูลของผู้ใช้?

คำตอบ:


32

มีสองวิธีหลักในการระบุกระบวนการที่หยุดทำงาน หนึ่งคือผ่าน GUI การตรวจสอบระบบและอื่น ๆ ผ่านtopในบรรทัดคำสั่ง

การตรวจสอบระบบ

สามารถพบได้ในระบบ> การดูแลระบบ

บัญชี

นอกจากนี้คุณยังสามารถสร้างแป้นพิมพ์ลัดสำหรับการนี้ในบทความนี้

เมื่อ GUI เปิดตัวคุณสามารถเลือกแท็บกระบวนการซึ่งจะแสดงรายการกระบวนการที่กำลังทำงานอยู่ทั้งหมด จัดเรียงตามคอลัมน์ CPU เพื่อค้นหางานที่ต้องใช้ CPU มากที่สุด

ซีพียู

สุดท้ายคุณสามารถคลิกขวาที่งานนั้นและเลือกที่จะจบมันหยุดหรือฆ่ามัน การฆ่ามันจะหยุดทันทีและลบกระบวนการนั้นออกจากระบบ

ฆ่า

บรรทัดคำสั่ง

หากคุณเปิดเทอร์มินัลคุณสามารถพิมพ์topสิ่งนี้เพื่อแสดงรายการกระบวนการทำงานทั้งหมดที่คล้ายกับแท็บกระบวนการใน GUI

ด้านบน

ภายในด้านบนจะมี CPU เรียงตามค่าเริ่มต้นดังนั้นงานที่ต้องใช้ CPU มากที่สุดส่วนใหญ่จะอยู่ที่ด้านบน คุณสามารถกดตัวอักษรkเพื่อฆ่ากระบวนการได้ตลอดเวลา

k

เพียงพิมพ์ PID ของกระบวนการที่คุณต้องการฆ่าและกด Enter มันจะขอให้ส่งสัญญาณฆ่าเพื่อส่ง เพื่อฆ่ากระบวนการใช้ค่าเริ่มต้น 15 - เพื่อฆ่ามันทันที "อย่าผ่านอย่าไปไม่เก็บ $ 200" ใช้ 9

SIGKILL

กระบวนการจะถูกยกเลิก

หากคุณกำลังประสบอินเตอร์เฟซที่ซบเซาคุณสามารถลอง SSH ในระยะไกลถ้าที่เปิดใช้งาน - หรือสลับไปยังคอนโซลเสมือนผ่านCtrl+ Alt+ F#ไหนF#เป็นฟังก์ชั่นคีย์ (F3, F4, F5, ฯลฯ ) หากต้องการกลับไปที่สภาพแวดล้อมเดสก์ท็อปให้เปลี่ยนเป็น F7 หรือ F8 ตามรุ่นของ Ubuntu


5
คำตอบที่ดี ฉันมักจะกำหนดทางลัด CTRL + ESC ให้กับการตรวจสอบระบบ นี่ทำให้ฉันเข้าถึงกระบวนการฆ่าได้อย่างรวดเร็ว
Javier Rivera

@Marco Ceppi: ภาพหายไปไหน?
enzotib

@enzotib โพสต์ได้รับการปรับปรุง
Marco Ceppi

1
+1 สำหรับการตรวจสอบระบบ มันสามารถฆ่า / หยุดกระบวนการ VLC ที่แขวนซึ่งไม่สามารถทำได้
malisokan

@malisokan คุณแน่ใจว่าhtopทำไม่ได้เหรอ? คุณสามารถส่ง SIGKILL เพื่อฆ่ากระบวนการแฮงค์ใด ๆ ที่คุณมีสิทธิ์
val พูดว่า Reinstate Monica

4

เพิ่มSystem Monitorแอปเพล็ตลงในพาเนลของคุณ ( คลิกขวาที่พาเนลเลือกAdd to Pannelและค้นหาการตรวจสอบระบบ) และคลิกขวาเพื่อเปิดแอปพลิเคชันการตรวจสอบระบบ

คุณสามารถเปิดโปรแกรมการตรวจสอบระบบโดยการกดและเริ่มต้นโปรแกรมAlt+F2gnome-system-monitor

ไปที่ "กระบวนการแท็บ" และคลิกขวา appliction ที่คุณเจตนาที่จะฆ่า


3

ส่วนใหญ่พูดแล้ว (ฉันชอบคำตอบของ Marco Ceppi) แต่ก็มีแอปเพล็ต "Force Quit" ที่คุณสามารถเพิ่มในพาเนล GNOME ของคุณ คลิกขวาที่แผงควบคุมและเลือก "เพิ่มในแผง ... ":

ข้อความแสดงแทน

สิ่งนี้จะช่วยให้คุณออกจากแอปพลิเคชันที่แขวนอยู่โดยเพียงคลิกที่หน้าต่าง เร็วและมีประสิทธิภาพมาก


เมื่อรัน Unity ใน 11.04 แน่นอนว่าแอปพลิเคชันนี้จะไม่สามารถใช้งานได้อีกต่อไป มีโครงการทดแทนIndicator-Forcecloseแต่ไม่รวมอยู่ในที่เก็บ

อีกวิธีหนึ่งเราสามารถเรียกใช้xkillจากสถานี


มันจะทำลายหน้าต่างหรือฆ่ากระบวนการหรือไม่
val พูดว่า Reinstate Monica

@ มากมันจะฆ่ากระบวนการที่สร้างหน้าต่าง
Takkat

เพิ่งทดสอบ: มันไม่ได้ ฉันสร้างโปรแกรมที่แฮงค์ใน GTK callback และฆ่ามันด้วย xkill หน้าต่างหายไป แต่โปรแกรมยังคงทำงานต่อไป (หรือหยุดทำงานหากคุณต้องการ) ดังนั้นคำตอบคือไม่มันอาจไม่ฆ่าโปรแกรมถ้ามันติดขัด
val พูดว่า Reinstate Monica

@val ตามปกติหลังจากที่โปรแกรมของคุณเรียกกระบวนการอื่นในการสร้างหน้าต่างxkillจะฆ่ากระบวนการเพิ่มเติมนี้เท่านั้น สิ่งนี้สำคัญอย่างยิ่งที่ต้องทราบสำหรับโปรแกรมที่ทำงานโดยไม่มี X-server แต่เรียก X สำหรับการสร้างหน้าต่าง เห็นได้ชัดว่ามันเป็นไปไม่ได้ที่จะฆ่าโปรแกรมดังกล่าวจากเซิร์ฟเวอร์ X
Takkat

โปรแกรมของฉันไม่ได้เรียกใช้กระบวนการอื่น ฉันสร้างโปรแกรมซึ่งเหมือนกับแอปพลิเคชัน GTK ใด ๆ ที่นั่นและทำให้มันหยุดทำงาน xkillไม่ส่งผลกระทบต่อกระบวนการดังกล่าว (GTK จะทำให้เกิดทางออกหากภายหลังฉันจะออกจาก "หยุด" และทำให้จัดการกับการสูญเสียของหน้าต่าง) การเรียกกลับ GTK ไม่มีส่วนเกี่ยวข้องกับการประมวลผลหลายตัว
val พูดว่า Reinstate Monica
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.