แล็ปท็อปส่วนใหญ่ต้องการการกดFnเพื่อรับSysRqกุญแจ การกดFnมักจะไม่ส่งผลกระทบต่อAltปุ่ม (อย่างน้อยปุ่มซ้าย) แต่อาจส่งผลต่อตัวอักษรที่คุณกดหลังจากSysRqนั้น โชคดีที่คุณไม่จำเป็นต้องกดSysRqและปุ่มที่สามพร้อมกันก็พอที่จะAltกดค้างไว้ ลำดับต่อไปนี้ใช้ได้กับแล็ปท็อปทั้งหมดที่ฉันเคยเห็น:
- Altกดค้างไว้
- กดFn, กดSysRqปุ่มแล้วปล่อยทั้งสอง
- คีย์ตัวอักษรหรือเครื่องหมายวรรคตอนสั้น ๆ เช่นSการซิงค์
- Altปล่อย
ที่สำคัญมักจะเป็นกุญแจสำคัญเช่นเดียวกับSysRq PrintScreenหากแป้นพิมพ์ของคุณไม่มีคีย์ป้ายกำกับSysRqหรือPrintScreenอาจไม่มีรหัสที่ส่งรหัสสแกนที่ Linux คาดหวัง เพื่อจุดประสงค์ในการใช้เวทมนตร์ SysRq SysRqคีย์จะเป็นรหัสใดก็ตามที่ส่งรหัสสแกน 99
ด้วยแป้นพิมพ์ PS / 2 (รวมถึงแป้นพิมพ์ภายในของแล็ปท็อป) เพื่อค้นหารหัสสแกนที่คีย์ส่งเข้าสู่คอนโซลข้อความ (กดCtrl+ Alt+ F1เพื่อสลับไปยังคอนโซลข้อความและโดยปกติCtrl+ Alt+ F7เพื่อกลับไปที่ GUI ) showkey -s
และเรียกใช้คำสั่ง showkey -s
แสดงรหัสสแกนของแต่ละคีย์ขณะที่คุณพิมพ์ โดยปกติแล้วจะเป็นหนึ่งไบต์ (ตัวเลขฐานสิบหกสองหลัก) สำหรับการกดปุ่มและตามด้วยอีกไบต์สำหรับการปล่อยคีย์ e0
สำหรับปุ่มไม่กี่คุณจะได้รับลำดับไบต์ที่ประกอบด้วยไบต์ที่สองเริ่มต้นด้วย กดปุ่มที่คุณสนใจจากนั้นรอ 10 วินาทีและshowkey
จะออก
ตอนนี้ที่คุณได้ระบุรหัสสแกนทำงานsetkeycodes … 99
เป็นรากที่จะกำหนดว่าโค้ดสแกนไปยังคีย์รหัส 99 ตัวอย่างเช่นถ้าshowkey -s
พิมพ์สำหรับคีย์ที่คุณเลือกวิ่ง0xe0 0x6f 0xe0 0xef
setkeycodes e06f 99
เพื่อให้การเปลี่ยนแปลงนี้อย่างถาวรทั้งเพิ่มsetkeycodes
คำสั่ง/etc/rc.local
หรือการกำหนดค่า udev จะเปลี่ยนแมป การกำหนดค่า udev เป็นทางออกสำหรับคีย์บอร์ด USB เท่านั้นsetkeycodes
ไม่มีผลกับคีย์บอร์ด USB