Computer >> คอมพิวเตอร์ >  >> ระบบ >> Linux

วิธีแก้ไขระบบ Linux ที่ไม่ตอบสนองด้วยคีย์ผสม SysRq

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

จะเกิดอะไรขึ้นหากมีวิธีแก้ไขสถานการณ์เหล่านี้อย่างรวดเร็วโดยไม่ต้องปิดระบบของคุณ คีย์ผสม SysRq ช่วยคุณได้ มาดูกันดีกว่าว่าคุณจะใช้คีย์ผสมนี้ได้อย่างไรเพื่อป้องกันการจู่โจมในคอมพิวเตอร์ของคุณ

พุ่งชน - ทำไมต้องเป็นฉัน

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

บางคนอาจแนะนำให้ซื้อเครื่องใหม่ที่มีหน่วยความจำมากขึ้นสำหรับการเรียกใช้แอปพลิเคชันที่ต้องใช้ทรัพยากรมาก แต่ถ้าทำไม่ได้ ก็มีวิธีแก้ปัญหานี้เช่นกัน

แก้ไข Thrashing โดยใช้คีย์ผสม Magic SysRq

ดังนั้นคุณยังคงมีเครื่องเก่าอยู่ไม่ว่าจะด้วยเหตุผลใดก็ตาม แต่ตอนนี้ คุณต้องจัดการกับมัน มักไม่ค่อยพอใจกับเว็บไซต์สมัยใหม่ที่ตอนนี้ปรับให้เข้ากับการประมวลผลฝั่งไคลเอ็นต์เป็นส่วนใหญ่ มันแผงลอย มันค้าง มันทำให้คุณผิดหวัง

คุณไม่สามารถโยนคอมพิวเตอร์ข้ามห้อง แต่คุณสามารถจัดการกับสถานการณ์ได้โดยใช้ชุดแป้นพิมพ์พิเศษ นี่เป็นวิธีที่เชื่อถือได้มากที่สุดในการปิดทุกอย่างโดยไม่ได้กดปุ่มเปิด/ปิดค้างไว้

  1. กด Ctrl + Alt + Fn ปุ่มบนแป้นพิมพ์ของคุณพร้อมกัน
  2. กดปุ่ม SysRq กุญแจมืออีกข้าง หากแป้นพิมพ์ของคุณไม่มีป้ายกำกับ SysRq ให้กด Prtscn กุญแจ.
  3. ปล่อย CtrlAltFn คีย์ในขณะที่ยังคงถือ SysRq กุญแจ.
  4. กดปุ่มต่อไปนี้ตามลำดับนี้:R , อี , ฉัน , , คุณ , .
  5. ปล่อยปุ่มทั้งหมด

หลังจากทำเช่นนี้แล้วให้รอสองสามวินาทีและเครื่องจะหยุดทำงาน ชุดคีย์ผสมดังกล่าวทำงานต่อไปนี้บนระบบของคุณ

  • :สลับคีย์บอร์ดเป็นโหมด Raw
  • อี :ส่งสัญญาณ SIGTERM ไปยังกระบวนการทั้งหมด ยกเว้น init สัญญาณนี้มีหน้าที่ในการยุติกระบวนการที่ระบุ
  • ฉัน :ส่งสัญญาณ SIGKILL ไปยังกระบวนการทั้งหมด ยกเว้น init
  • :ซิงค์ระบบไฟล์ทั้งหมดที่ติดตั้งอยู่บนระบบ
  • คุณ :ติดตั้งระบบไฟล์ใหม่ในโหมดอ่านอย่างเดียว
  • :รีบูตระบบ

การแก้ไขระบบ Linux ที่ไม่ตอบสนอง

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

คุณยังสามารถตรวจสอบกระบวนการทำงานบนระบบ Linux ของคุณได้โดยใช้คำสั่ง ps คำสั่งจะส่งออกข้อมูล เช่น รหัสกระบวนการ เวลาที่กำหนดให้กับกระบวนการโดย CPU เชลล์ TTY ปัจจุบัน และอื่นๆ