Los botones adicionales del mouse no funcionan en la virtualización (VMware / VirtualBox, ubuntu host)

22

Estoy tratando de ejecutar VMware Workstation y / o VirtualBox en Ubuntu. Las máquinas virtuales funcionan perfectamente en ambas aplicaciones, a excepción de los botones adicionales del mouse (adelante / atrás). En Ubuntu, todos los botones del mouse funcionan.

Aplicaciones de virtualización: VMware Workstation 10.0.1, la última VirtualBox

Versiones de Ubuntu que probé como host: 12.04, 13.10, 14.04 beta

SO invitado que probé: Windows 7, varios sistemas operativos Linux en modo en vivo

Ratones que probé (todos con botones laterales): Logitech M510 (receptor unificador), viejo Razer Copperhead, mouse sin nombre

Ya probé muchas soluciones que encontré en línea, por ejemplo, cambiar la configuración del mouse en .vmx en VMware WS (mouse.vusb.enable, ...), cambiar la configuración de entrada en VMware / VirtualBox, reinstalar las herramientas de invitado en el SO huésped , ...

Creo que es un problema en Ubuntu y no en las aplicaciones de virtualización. ¿Alguien tiene una solución para esto?

mika209
fuente
mika209: ¿puedes ejecutar xev | grep -i "botón" en una terminal en el SO invitado? Luego vaya a la ventana, haga clic con el mouse hacia adelante y hacia atrás. Agregue el resultado a su pregunta o a ubuntu pastebin para facilitar la lectura.
Anders FU Kiær

Respuestas:

17

Posible solución:

Después de editar el archivo .vmx de la máquina virtual para agregar

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

podrá usar su mouse de cinco botones en la VM. Para hacerlo, abra su VM y luego navegue hasta Virtual Machine > Removable Devices > [Your Mouse] > Connect (Disconnect from Host). Recibirá un par de advertencias de que ya no podrá usar su mouse con el host, y simplemente haga clic en Aceptar.

Ahora solo puede usar su mouse dentro de la VM, ya sea en pantalla completa o en modo ventana. Presione Ctrl-Gsu teclado para deshacerse del ícono del mouse del host y sumérjase por completo en la VM. Una vez que necesite su mouse nuevamente fuera de la VM, presione Ctrl+Alt, luego suelte. Ahora el foco vuelve a su sistema operativo host. Mantenga Altpresionado Vpara abrir el Virtual Machinemenú y use las teclas de flecha para navegar Virtual Machine > Removable Devices > [Your Mouse] > Disconnect (Connect to Host).

Ahora todo vuelve a la normalidad. Esperemos que algo cambie pronto en Ubuntu o VMWare Player para hacerlo más fácil.

MattSayar
fuente
Sí, ya intenté agregar usb.generic.allowHID = "TRUE" a la configuración de VMware .vmx. Después de eso, puede conectar el mouse / HID directamente a la máquina virtual. Pero creo que esto es más una solución que una solución ..
mika209
Convenido. Funciona si planea trabajar exclusivamente en la VM durante un período de tiempo significativo, pero al final no es muy fácil de usar
MattSayar
1
Windows 10 Host, Ubuntu 14.04 Invitado. VMWare 11. Agregar esas tres líneas funcionó para mí. Específicamente, la línea useBasicMouse fue importante. Sin ella, la solución aún se aplica, pero mi mouse volvía aleatoriamente al SO host incluso con el invitado en pantalla completa.
Halsafar
1
¡Funcionó perfectamente para mí! Todo lo que tuve que hacer es editar el archivo .vmx para agregar las 3 líneas. No tuve que desconectar el mouse del host y el mouse todavía hizo la transición automáticamente entre el host y el invitado, como antes. VMware Workstation 11, Windows 7 host, Ubuntu 12.04 y 16.04 invitados. La VM tuvo que apagarse y encenderse nuevamente para que esto funcionara; suspender / reanudar no fue suficiente.
EM0
1
VMware Workstation 12.5.2, host de Windows 7, invitado de Ubuntu 17.04. Simplemente detuve la VM, agregué estas 3 líneas al archivo VMX y comencé de nuevo. Hizo el truco.
Pierre Henry
12

Para obtener botones de mouse adicionales para trabajar en VMware, edite configfile.vmx (agregue las siguientes líneas):

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

La configuración anterior habilitará un mouse virtual vmware con 20 botones. Sin embargo, en ciertas situaciones, vmware no está asignando el evento del mouse que llega al host al evento de invitado correcto.

Exactamente por qué no puede enviar el evento de mouse correcto es una buena pregunta que no está cubierta.

Inicie y ejecute lo siguiente en el sistema operativo invitado. Corre xev | grep -i "button"en una terminal. Muévase a la ventana generada, haga clic en los botones que desea asignar o intercambie una vez. xevgenera el evento de mouse registrado, en muchos casos los botones de mouse adicionales que deberían ser, por ejemplo. el botón del mouse 8 o 9 se recibe como evento de botón del mouse 16 o 17.

La reasignación de eventos del botón del mouse se puede hacer con, por ejemplo, xinput, lo siguiente hace que el ID de dispositivo 8 tenga el botón de mouse 16 actuando como mouse 8 y el mouse 17 como mouse 9.

xinput set-button-map 8 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 8 9
Anders FU Kiær
fuente
1
Esto funcionó perfectamente para mí: Windows 7 x64 (Host) + SetPoint 6.65.62 + M705 Logitech Mouse, VMWare 10, Kubuntu 14.04 x64 (invitado). Pude ver los resultados de xev | grep -i "button"inmediato y los eventos de botón correctos 8/9 asignados a atrás / adelante. Funciona como está en Chrome y Firefox sin ninguna otra configuración en la caja de Linux.
Angelos Pikoulas
1
Esto también funcionó para mí, ¡gracias! Fedora 24 y Windows 8.1 (x64) host con un Logitech G9. VMware Workstation 12.5.
Devator
1
¡Muchas gracias! Me funcionó perfectamente con Windows 10 host y Ubuntu 16.04 invitado. Después de editar el .vmx, ni siquiera tuve que usar xinput para mapear nada, los botones adicionales funcionaron como atrás / adelante de forma nativa.
DaveTheScientist
1
Esto funcionó para mí cuando lo puse en VMNAME.vmx en su carpeta. Pero, ¿hay alguna manera de hacer esto global?
Michael Yoo
1
Creé el archivo y agregué los cambios ~/.vmware/configcon el .encoding = "UTF-8"encabezado y funcionó, así que supongo que esa es la forma de configurarlo globalmente (para su usuario). (Estación de trabajo 14)
Michael Yoo
0

No puede emular más de 3 botones en VirtualBox y VMware. Esto se debe a que presenta al sistema invitado un mouse (súper) estándar de 3 botones. Podría ser posible si les gusta, pero en este momento la respuesta es no.


Entonces, ¿por qué funciona en Windows? Debido a que las implementaciones de Linux y Windows siguen una hoja de ruta diferente, y "cada front-end tiene su propia forma de llegar a la entrada del mouse" ( fuente ). Esto se puede ver en otra pregunta de Super Usuario

Braiam
fuente
Si usa Windows 7/8 como host con VMware o VirtualBox, los botones adicionales del mouse funcionan en muchos sistemas operativos invitados. ¿Cómo es eso posible?
mika209
@ mika209 implementaciones diferentes. Es igual de simple.
Braiam
2
@braiam: No puedo decir qué es verdad para VirtualBox, pero puedo decir que VMware Workstation and Player admite 24 botones. Volveré con una respuesta actualizada y ampliada cuando tenga tiempo. Mientras tanto, para ser correcto, sería bueno que actualizara su respuesta para no incluir VMware.
Anders FU Kiær
@ AndersF.U.Kiær después del comentario de OP aquí , aparentemente no funciona.
Braiam
@braiam, si verifica las marcas de tiempo, puede ver fácilmente que OP no intentó la respuesta actualizada, ni siguió ejecutando el xev. Sin embargo, ya no podría importarme menos. Reproduje el problema, ya que uso las mismas configuraciones con vmware mucho. Ahora he compartido el conocimiento. Si otros quieren jugar un juego ignorante, siéntete libre.
Anders FU Kiær
0

Intenté todo esto, la solución fue simple en mi Dell XPS 13, Windows 10, VMware Player 12, invitado Ubuntu 14.04

Inicie el panel de control, cambie la configuración del mouse, el centro del mouse y del teclado, la configuración del mouse de Microsoft, el botón de la rueda. Establezca el botón central del mouse en lugar del visor instantáneo predeterminado.

Esto permite copiar y pegar con el botón central del mouse en Ubuntu.

James

Jims
fuente
0

Probé esto en el host de Windows 10 (debería ser el mismo en ubuntu), VMware workstation player 12, con un mouse logitech m510.

Si hace esto, su mouse solo funcionará en la máquina virtual, por lo que necesitará conocer los atajos de teclado para habilitar y deshabilitar, a menos que tenga dos ratones, o un panel táctil y un mouse, como en un cuaderno.

  1. Vaya a la carpeta de su máquina virtual y localice el .vmxarchivo.
  2. Edítelo en el bloc de notas y agregue:

    usb.generic.allowHID = "TRUE"
    usb.generic.allowHID = "TRUE"
    usb.generic.allowLastHID = "TRUE"
    
  3. Abra la máquina virtual y navegue hasta Virtual Machine > Removable Devices > [Your Mouse] > Connect (Disconnect from Host). Cuando lo haga, el mouse solo funcionará en la máquina virtual.

  4. Instale el controlador / software de mouse logitech en la máquina virtual (puede hacer este paso antes de todo si lo desea)
  5. Puede presionar Ctrl+ Gen su teclado para deshacerse del icono del mouse del host y sumergirse completamente en la VM.
  6. Cuando desee volver a usar el mouse en la máquina host, presione Ctrl+ Alt, luego suelte, para que el foco esté en el reproductor vmware, no en la máquina virtual. Ahora puede usar los atajos de teclado normales de Windows. En este caso, presione Alt+ Ppara abrir el menú del reproductor de la estación de trabajo vmware y use las teclas de flecha del teclado para navegar Virtual Machine > Removable Devices > [Your Mouse] > Disconnect (Connect to Host).
Lombas
fuente