How do I get my mouse back from QEMU/KVM?

141,731

Solution 1

Keyboard methods

  1. If using the SDL frontend of QEMU:

    You can release focus using the Left Ctrl+ Left Alt. Notice you have to use the left keys!

  2. If using the GTK frontend of QEMU (default since QEMU 1.5):

    Press Ctrl+ Alt+ G

Focus free method

See my question I posted on this exact thing on ServerFault. The Q&A is titled: Any way to release focus on a KVM guest in virt-manager without having to click Ctrl_L + Alt_L?. This will allow you to no longer have to use the keyboard to release focus between the host and the guest.

There are 2 methods discussed in answers to the question. The first involves adding another mouse, the other makes use of Spice which allows for smooth focus transitions between the host and the guest.

Solution 2

Depending on which linux guest you have, install the qemu-guest-agent package, run systemctl enable qemu-guest-agent, stop your vm, and then according to this RH KB article, add the following to your vms xml config:

<channel type='unix'>
  <target type='virtio' name='org.qemu.guest_agent.0'/>
</channel>

Then restart your vm. If you can mouse into the vm, mouse out, even copy/paste.

Solution 3

The suggestions did not work for me in the QEMU/KVM gui display on Ubuntu. What did work was to set the hotkeys/Grab Keys in the Virtual Machine Manager interface (preferences of the VM) before running the VM. My settings:

  • Graphical Console Scaling: Fullscreen only
  • Resize guest with window:on
  • Grap Keys: left Ctrl button + right Alt button
  • Force console shortcuts:checked

Note: to set the Grab keys... the instructions are to press "change" then select and hold your grab key combination then and only then select "ok". Clearly I should have read this the first time, as I lost control of the VM haha.

In the VM, in maximised mode

  • hold down the hotkey/grab keys and navigate with the mouse to the centre top of the vm screen. ( Navigating to the top works now ... dunno why... but all good)
  • The Virtual Machine Manager toolbar should show. Had some instances, where it was a bit slow. I also adjusted my CPU and memory allocation in the host because initially it was very laggy.

Happy hacking... "meant in old school venacular when it was just messing with stuff you didn't know"

Oh, and I am using the http://virt-manager.org/ from RedHat.

Solution 4

if someone has using qemu in osx, then he needs to press control+option+g to get the mouse pointer back to the host.

Share:
141,731

Related videos on Youtube

Michael A
Author by

Michael A

Updated on September 18, 2022

Comments

  • Michael A
    Michael A over 1 year

    I'm running QEMU/KVM on Debian Testing x64 with this command:

    kvm -m 1024 -hda win7.img -cdrom win7x86.iso -boot d -net user
    

    But when I click inside the virtual machine, QEMU captures my mouse and won't let it go. I thought the key combination to free the mouse was Right Ctrl, but nothing happens when I press it. I also tried appending the -usbdevice tablet or -usbdevice mouse options:

    kvm -m 1024 -hda win7.img -cdrom win7x86.iso -boot d -net user -usbdevice tablet
    

    or

    kvm -m 1024 -hda win7.img -cdrom win7x86.iso -boot d -net user -usbdevice mouse
    

    but the situation is the same. I'm using QEMU emulator version 1.7.0 (Debian 1.7.0+dfsg-2).

  • jordanm
    jordanm over 10 years
    I think the method he is looking for actually is ctrl_l+alt_l. He mentions in the post he was just trying to use ctrl.
  • slm
    slm over 10 years
    @jordanm - thanks I thought that was obvious from my link, I added it here as well.
  • Michael A
    Michael A over 10 years
    @slm Thanks for the tip. That SF question is super helpful too!
  • Anton Samsonov
    Anton Samsonov over 8 years
    If you are using Spice Client, then the hotkey is Shift+F12 for releasing the mouse pointer and Shift+F11 to switch full-screen mode.
  • Christoph90
    Christoph90 almost 6 years
    It's not working if the guest is in full-screen mode (Host: Ubuntu 18.04, Guest: Debian 9)
  • done
    done over 5 years
    The first answer already has this solution.
  • Pathros
    Pathros over 5 years
    ctrl + alt + g works on MacOS. Thank you.
  • Pathros
    Pathros over 5 years
    ctrl + alt + g works on MacOS. Thank you.
  • Philippe Gachoud
    Philippe Gachoud about 5 years
    not working even with this config
  • Kusalananda
    Kusalananda over 3 years
    The user in the question is running Debian, not macOS. Your answer therefore seems irrelevant to the question unless you can confirm that it would also solve it for Debian.
  • Kusalananda
    Kusalananda over 3 years
    The user in the question is running Debian, not macOS. Your answer therefore seems irrelevant to the question unless you can confirm that it would also solve it for Debian.
  • Armando Marques Sobrinho
    Armando Marques Sobrinho over 3 years
    Yep Mr @Kusalananda, but I use QMU on a mac and the search brought me to that question, and it has solved my problem. Like me, several other mac users came to this question the same way. but I can remove the answer, no problem.
  • Kusalananda
    Kusalananda about 3 years
    In this case, an edit suggestion to an already existing answer that covers Debian seems appropriate. Such an answer would then answer the question for the platform mentioned in the question, and then go on to provide additional info for some other platforms, e.g. macOS.
  • Paul FREAKN Baker
    Paul FREAKN Baker almost 3 years
    If you're on MacOS using a USB keyboard; you'll need to go back to the built-in keyboard and hit fn + ctrl + option + g.
  • John Hunt
    John Hunt over 2 years
    I just realised it actually says this in the title bar of the emulator window.
  • Zaid Gharaybeh
    Zaid Gharaybeh about 2 years
    does not work on ubuntu 20.04