How do I get my mouse back from QEMU/KVM?
Solution 1
Keyboard methods
-
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!
-
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.
Related videos on Youtube
Michael A
Updated on September 18, 2022Comments
-
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 over 10 yearsI 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 over 10 years@jordanm - thanks I thought that was obvious from my link, I added it here as well.
-
Michael A over 10 years@slm Thanks for the tip. That SF question is super helpful too!
-
Anton Samsonov over 8 yearsIf 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 almost 6 yearsIt's not working if the guest is in full-screen mode (Host: Ubuntu 18.04, Guest: Debian 9)
-
done over 5 yearsThe first answer already has this solution.
-
Pathros over 5 years
ctrl + alt + g
works on MacOS. Thank you. -
Pathros over 5 years
ctrl + alt + g
works on MacOS. Thank you. -
Philippe Gachoud about 5 yearsnot working even with this config
-
Kusalananda over 3 yearsThe 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 over 3 yearsThe 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 over 3 yearsYep 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 about 3 yearsIn 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 almost 3 yearsIf 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 over 2 yearsI just realised it actually says this in the title bar of the emulator window.
-
Zaid Gharaybeh about 2 yearsdoes not work on ubuntu 20.04