我在我的笔记本电脑上安装了kali linux操作系统。
安装进行得很顺利,但是当我在 kali linux 中启动时,屏幕是倒退的。我以 root 身份登录,屏幕向后翻转,但鼠标方向相反(x 和 y 轴)。
当我向左移动鼠标时,它会向右移动;当我向下移动鼠标时,它会向上移动。如果我想按右上角的按钮,我需要按左下角的按钮。
屏幕正在执行反向操作(x 和 y 轴),但我直接看到图形并且鼠标正在执行反向操作。
我重新安装了kali linux。我有和以前一样的问题。
我重新安装了kali linux。我有和以前一样的问题。
- 我在网上搜索过,但没有找到有关此类问题的信息
答案1
根据 @dirkt 建议,您可以使用转换矩阵来纠正问题。
首先,要查看变换矩阵的当前设置是什么,您可以运行:
xinput
#locate the device ids that do not work correctly
xinput list-props devid |grep Matrix
#replace devid with your device number.
如果一切正常,矩阵应该是这样的:
1 0 0 0 1 0 0 0 1 #case normal
如果您想强制鼠标/屏幕反转,那么您应该应用如下矩阵:
-1 0 1 0 -1 1 0 0 1 #case inverted
我想你的鼠标/屏幕因为它们工作颠倒,所以它们xinput list-props |grep Matrix
应该看起来像“大小写颠倒”而不是“大小写正常”
在这种情况下,强制这些设备使用正常情况矩阵,如下所示:
xinput set-prop devicename Coordinate Transformation Matrix 1 0 0 0 1 0 0 0 1 #be sure to use the exact device name as it is reported by xinput
现在你应该没事了。
我不知道在您的设备中应用了错误矩阵的原因是什么,但我认为最好向 Kali 人员针对这种行为提交错误。
如果屏幕显示是倒置的,那么 xrandr 就足够了:
xrandr --output yourscreen --rotate normal
如果您的屏幕是触摸屏,则 xrandr 旋转是不够的。您还需要在触摸屏中应用正确的变换矩阵,以便在正确的位置感应到触摸。
答案2
这正是我解决此问题的方法:
xinput
在控制台中键入 , 将打印出如下输入列表:
? Virtual core pointer id=2 [master pointer (3)]
? ? Virtual core XTEST pointer id=4 [slave pointer (2)]
? ? USBest Technology SiS HID Touch Controller id=11 [slave pointer (2)]
? ? ETPS/2 Elantech Touchpad id=14 [slave pointer (2)]
? Virtual core keyboard id=3 [master keyboard (2)]
? Virtual core XTEST keyboard id=5 [slave keyboard (3)]
? Power Button id=6 [slave keyboard (3)]
? Asus Wireless Radio Control id=7 [slave keyboard (3)]
? Video Bus id=8 [slave keyboard (3)]
? Sleep Button id=9 [slave keyboard (3)]
? USB2.0 UVC HD Webcam id=10 [slave keyboard (3)]
? Asus WMI hotkeys id=12 [slave keyboard (3)]
? AT Translated Set 2 keyboard id=13 [slave keyboard (3)]
(您的体验可能因设备而异)
请注意,id=# 是您实际要查找的设备 ID。
我不确定哪个设备出了问题,所以我检查了每一个。事实证明,11 号设备很蠢!要列出属性,请键入:
xinput list-props 11
(因为设备 id=11 是有问题的设备)
输入该内容将显示类似...
Device 'USBest Technology SiS HID Touch Controller':
Device Enabled (139): 1
Coordinate Transformation Matrix (141): -1.000000, 0.000000, -1.000000, 0.000000, -1.000000, 0.000000, 0.000000, 0.000000, -1.000000
libinput Calibration Matrix (276): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Calibration Matrix Default (277): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Send Events Modes Available (259): 1, 0
libinput Send Events Mode Enabled (260): 0, 0
libinput Send Events Mode Enabled Default (261): 0, 0
Device Node (262): "/dev/input/event10"
Device Product ID (263): 1111, 4238
(我是在解决问题后写的,所以 -1.000000 值可能在其他地方)那些“-1.000000”值就是问题所在。为了将它们设置为正确的值,我输入:
xinput set-prop 11 "Coordinate Transformation Matrix" 1 0 0 0 1 0 0 0 1
然后我重新启动,一切都很好!
我不知道为什么这仍然是一个问题。它已多次登录 bugs.kali.org,并且每个都被标记为已关闭,解决方案为“不会修复”。