คำแนะนำของฉันคือคุณติดตั้งแอปพลิเคชันอินพุต - utils
sudo -i
apt-get update
apt-get install input-utils
นี่คือชุดของโปรแกรมอรรถประโยชน์ที่มีประโยชน์เมื่อทำงานกับเลเยอร์อินพุตของเคอร์เนล Linux (เวอร์ชัน 2.6 ขึ้นไป) รวมเป็นยูทิลิตี้เพื่อแสดงรายการอุปกรณ์อินพุตที่เคอร์เนลรู้จักแสดงเหตุการณ์อินพุตที่ได้รับจากอุปกรณ์และเคียวรีหรือแก้ไขแม็พคีย์บอร์ด
คำสั่งที่น่าสนใจคือ:
sudo -i
lsinput
มันจะดัมพ์อุปกรณ์อินพุตทั้งหมดและรายละเอียดที่เกี่ยวข้องเกี่ยวกับอุปกรณ์
สามารถสังเกตเหตุการณ์อินพุตโดยใช้คำสั่งโดยระบุหมายเลขอุปกรณ์ Nth:
sudo -i
input-events <device number>
จากนั้นหนึ่งสามารถดัมพ์การแม็พคีย์บอร์ดของอุปกรณ์เหตุการณ์เฉพาะโดยใช้คำสั่งโดยระบุหมายเลขอุปกรณ์ Nth:
sudo -i
input-kyb <device number>
ด้วยเครื่องมือเหล่านี้สามารถดีบักระบบเพื่อดูว่าอินพุตสร้างรหัสเหตุการณ์ที่คาดไว้หรือไม่และช่วยแก้ไขปัญหาเช่นสาเหตุที่คีย์ไม่ทำงานหรือแมปไม่ถูกต้อง
Udev เป็นตัวจัดการอุปกรณ์สำหรับเคอร์เนล Linux มันจัดการโหนดอุปกรณ์ใน / dev และจัดการการดำเนินการพื้นที่ผู้ใช้ทั้งหมดเมื่อเพิ่มหรือลบอุปกรณ์
Evdev เป็นอินเทอร์เฟซเหตุการณ์อินพุตทั่วไปในเคอร์เนล Linux มันสรุปเหตุการณ์อินพุตดิบจากไดรเวอร์อุปกรณ์และทำให้พร้อมใช้งานผ่านอุปกรณ์อักขระใน/dev/input/
ไดเรกทอรี
ทุกครั้งที่มีการเปลี่ยนแปลงเกิดขึ้นภายในโครงสร้างอุปกรณ์เคอร์เนลจะปล่อย uevent ซึ่งรับโดย udev จากนั้น udev ปฏิบัติตามกฎที่ประกาศไว้ในไดเร็กทอรี /etc/udev/rules.d, /run/udev/rules.d และ /lib/udev/rules.d ไดเรกทอรี
จากข้อมูลที่มีอยู่ใน uevent พบกฎหรือกฎที่จำเป็นต้องทริกเกอร์และดำเนินการที่จำเป็น
การกระทำเหล่านี้สามารถสร้างหรือลบไฟล์อุปกรณ์ แต่ยังสามารถทริกเกอร์การโหลดไฟล์เฟิร์มแวร์เฉพาะลงในหน่วยความจำเคอร์เนล
/dev/input/event/*
คุณจะต้องให้ทุกคนเข้าถึงแป้นพิมพ์ของคุณเช่นรหัสผ่านที่คุณพิมพ์ ในระบบผู้ใช้คนเดียวสิ่งนี้อาจไม่สำคัญนัก แต่โดยทั่วไปแล้วในระบบผู้ใช้คนเดียวเรามักจะใช้ผู้ใช้ระบบเป็นชั้นเสริมความปลอดภัยในกรณีที่ส่วนประกอบบางส่วนถูกบุกรุกและโดยยกตัวอย่างเช่นการnobody
เข้าถึงผู้ใช้แป้นพิมพ์ของคุณ สตรีมอินพุตคุณกำลังอ่อนการป้องกันนี้ แม้ว่าสิ่งนี้อาจ "แก้ไข" การสับสน แต่ก็ไม่ใช่วิธีแก้ไขปัญหาทั่วไปที่เหมาะสมสำหรับปัญหาของคุณ ควรมีวิธีที่ดีกว่า