额外的鼠标按钮在虚拟化中不起作用(VMware / VirtualBox,ubuntu主机)


22

我正在尝试在Ubuntu上运行VMware Workstation和/或VirtualBox。除了额外的鼠标按钮(前进/后退)外,虚拟机在这两个应用程序中均能正常运行。在Ubuntu中,鼠标按钮全部可用。

虚拟化应用程序:VMware Workstation 10.0.1,最新的VirtualBox

我已测试作为主机的Ubuntu版本:12.04、13.10、14.04 beta

我测试过的来宾OS:Windows 7,实时模式下的多个Linux OS

我测试过的小鼠(全部带有侧面按钮):Logitech M510(统一接收器),旧的Razer Copperhead,无名鼠

我已经尝试了很多在线解决方案,例如,更改VMware WS上.vmx中的鼠标设置(mouse.vusb.enable,...),更改VMware / VirtualBox上的输入设置,在来宾OS上重新安装来宾工具,...

我认为这是Ubuntu中的问题,而不是虚拟化应用程序中的问题。有人对此有解决方案吗?


mika209:您可以运行xev吗?grep -i“来宾”在客户机OS中的终端上?然后移至窗口,单击鼠标的前进和后退按钮。请将输出添加到您的问题或ubuntu pastebin中以提高可读性。
Anders FUKiær2014年

Answers:


17

可能的解决方法:

编辑虚拟机的.vmx文件后,添加

mouse.vusb.enable = "TRUE"
mouse.vusb.useBasicMouse = "FALSE"
usb.generic.allowHID = "TRUE"

您将可以在虚拟机中使用五键鼠标。为此,请打开您的VM,然后导航到Virtual Machine > Removable Devices > [Your Mouse] > Connect (Disconnect from Host)。您将收到一些警告,提示您将无法再将鼠标与主机一起使用,只需单击“确定”即可。

现在,无论是全屏还是窗口模式,您都只能在VM内使用鼠标。敲击Ctrl-G键盘摆脱主机鼠标图标,让您完全沉浸在VM中。一旦您再次需要在VM外使用鼠标,请点击Ctrl+Alt,然后松开。现在的重点是回到您的主机操作系统。按住Alt并推动V以显示Virtual Machine菜单,然后使用箭头键导航到Virtual Machine > Removable Devices > [Your Mouse] > Disconnect (Connect to Host)

现在一切恢复正常。希望不久后Ubuntu或VMWare Player中会有所改变,以使其比这更容易。


是的,我已经尝试将usb.generic.allowHID =“ TRUE”添加到VMware .vmx设置。之后,您可以将鼠标/ HID直接连接到虚拟机。但我认为这是一个多解一个解决办法..
mika209

同意 如果您计划在相当长的一段时间内专门在VM中工作,那么它会起作用,但最终用户界面不是很友好
MattSayar 2014年

1
Windows 10主机,Ubuntu 14.04 Guest。VMWare 11.添加这三行对我有用。特别是useBasicMouse行很重要。没有它,该解决方案仍然适用,但是即使来宾处于全屏状态,我的鼠标仍会随机跳回主机操作系统。
Halsafar

1
为我完美地工作!我要做的就是编辑.vmx文件以添加3行。我不必从主机上断开鼠标的连接,鼠标仍然像以前一样在主机和来宾之间自动转换。VMware Workstation 11,Windows 7主机,Ubuntu 12.04和16.04来宾。VM必须先关闭电源然后再打开才能正常工作-暂停/恢复还不够。
EM0

1
VMware Workstation 12.5.2,Windows 7主机,Ubuntu 17.04来宾。刚刚停止了VM,将这3行添加到VMX文件中,然后再次启动。做到了。
皮埃尔·亨利

12

要使额外的鼠标按钮在VMware下工作,请编辑configfile.vmx(添加以下行):

mouse.vusb.enable = "TRUE"
mouse.vusb.useBasicMouse = "FALSE"

上面的设置将启用带有20个按钮的虚拟vmware鼠标。但是,在某些情况下,vmware不会将到达主机的鼠标事件映射到正确的来宾事件。

究竟为什么它无法发送正确的鼠标事件是一个未解决的好问题。

在来宾操作系统中启动并运行以下命令。xev | grep -i "button"在终端中运行。移至生成的窗口,单击您想要分配或交换一次的按钮。xev输出已注册的鼠标事件,在许多情况下,应使用额外的鼠标按钮。鼠标按键事件16或17会收到鼠标按键8或9。

鼠标按钮事件的重新分配可以通过例如来完成。xinput,以下内容使deviceID 8具有用作鼠标8的鼠标按钮16和用作鼠标9的鼠标17。

xinput set-button-map 8 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 8 9

1
这对我来说是完美的:Windows 7 x64(主机)+ SetPoint 6.65.62 + M705 Logitech鼠标,VMWare 10,Kubuntu 14.04 x64(来宾)。我可以立即看到将 xev | grep -i "button"和正确的按钮事件8/9映射到后退/前进的结果。它在Chrome和Firefox上可以正常使用,而Linux机器上没有任何其他配置。
Angelos Pikoulas 2014年

1
这也为我工作-谢谢!Fedora 24和Windows 8.1(x64)带有Logitech G9。VMware Workstation 12.5。
Devator

1
非常感谢!与Windows 10主机和Ubuntu 16.04 guest虚拟机完美配合。编辑完.vmx之后,我什至不必使用xinput来映射任何东西,这些额外的按钮本来就是后退/前进的。
DaveTheScientist

1
当我将它放在文件夹中的VMNAME.vmx中时,这对我有用。但是,有没有办法使它全球化?
Michael Yoo's

1
我创建的文件,并添加了变化~/.vmware/config.encoding = "UTF-8"头和它的工作,所以我认为这是设置此全局(您的用户)的方式。(工作站14)
Michael Yoo,

0

您不能在VirtualBox和VMware中模拟超过3个按钮。这是因为它向来宾系统提供了一个(超级)标准的3键鼠标。如果他们愿意的话,这是可能的,但现在的答案是“否”。


那么,为什么它可以在Windows中使用呢?因为Linux和Windows实现遵循不同的路线图,并且“每个前端都有自己的获取鼠标输入的方式”()。这可以在超级用户的另一个问题中看到


如果将Windows 7/8用作VMware或VirtualBox的主机,则额外的鼠标按钮可在许多来宾OS中使用。那怎么可能?
mika209 2014年

@ mika209不同的实现。就这么简单。
Braiam 2014年

2
@braiam:我无法说出VirtualBox的真实情况,但是我可以说VMware Workstation和Player支持24个按钮。有时间时,我将提供更新和扩展的答案。为了确保准确性,如果您将答案更新为不包括VMware,那将是很好的选择。
Anders FUKiær2014年

@AndersF.U.Kiær在OP评论之后在这里显然无效。
Braiam 2014年

@braiam,如果检查时间戳记,您可以很容易地看到OP没有尝试更新的答案,也没有跟进运行xev。但是,我已经不在乎了。我重现了该问题,因为我在vmware中使用了很多相同的设置。我现在已经分享了知识。如果其他人想玩无知的游戏,请放轻松。
Anders FUKiær2014年

0

我尝试了所有这些操作,在我的Dell XPS 13,Windows 10,VMware Player 12,宾客Ubuntu 14.04上,修复很简单

启动控制面板,更改鼠标设置,鼠标和键盘中心,Microsoft鼠标设置,滚轮按钮。设置为单击鼠标中键而不是默认的即时查看器。

这允许在鼠标中键单击复制并粘贴到Ubuntu中。

詹姆士


0

使用logitech m510鼠标在Windows 10主机(在ubuntu上应该是相同的),VMware工作站播放器12上对此进行了测试。

如果这样做,鼠标将只能在虚拟机上工作,因此,除非您有两个鼠标,或者触摸板和鼠标(如笔记本中的鼠标),否则您需要知道启用和禁用的键盘快捷键。

  1. 转到您的虚拟机文件夹并找到.vmx文件。
  2. 在记事本中对其进行编辑并添加:

    usb.generic.allowHID = "TRUE"
    usb.generic.allowHID = "TRUE"
    usb.generic.allowLastHID = "TRUE"
    
  3. 打开虚拟机并导航到Virtual Machine > Removable Devices > [Your Mouse] > Connect (Disconnect from Host)。当您这样做时,鼠标将仅在虚拟机上工作。

  4. 在虚拟机上安装Logitech鼠标驱动程序/软件(如果需要,可以先执行此步骤)
  5. 您可以按Ctrl+G键盘上的摆脱主机鼠标图标,并使自己完全沉浸在VM中。
  6. 当您要在主机上再次使用鼠标时,请按Ctrl+ Alt,然后松开,以便将焦点放在vmware播放器上,而不是虚拟机上。现在,您可以使用常规Windows键盘快捷键。在这种情况下,请按Alt+ P打开vmware工作站播放器菜单,然后使用键盘上的箭头键导航到Virtual Machine > Removable Devices > [Your Mouse] > Disconnect (Connect to Host)
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.