Easily setup a virtual Keyboard-Video-Mouse (KVM) switch for Libvirt/QEMU Virtual Machines (VMs).
Latest release | View develop branch...
Auto X.Org | Deploy VFIO | Guest Machine Guide | Libvirt Hooks | Power State Virtual Machine Manager
Switch device inputs between Host and VM(s) or Guest(s). Requires devices to remain connected to be seen by Guests (similar to the limitations within the PS/2 cable standard, unlike USB).
- Press
L-CTRL
+R-CTRL
to switch between Guests.
-
To download this script, you may:
-
Download the ZIP file:
- Viewing from the top of the repository's (current) webpage, click the green
<> Code
drop-down icon. - Click
Download ZIP
. Save this file. - Open the
.zip
file, then extract its contents.
- Viewing from the top of the repository's (current) webpage, click the green
-
Clone the repository:
- Open a Command Line Interface (CLI).
- Open a console emulator (for Debian systems: Konsole).
- Open a existing console: press
CTRL
+ALT
+F2
,F3
,F4
,F5
, orF6
.- To return to the desktop, press
CTRL
+ALT
+F7
. F1
is reserved for debug output of the Linux kernel.F7
is reserved for video output of the desktop environment.F8
and above are unused.
- To return to the desktop, press
- Change your directory to your home folder or anywhere safe:
cd ~
- Clone the repository:
git clone https://www.github.com/portellam/generate-evdev
-
-
To make this script executable, you must:
- Open the CLI (see above).
- Go to the directory of where the cloned/extracted repository folder is:
cd name_of_parent_folder/generate-evdev/
- Make the installer script file executable:
chmod +x installer.bash
- Do not make any other script files executable. The installer will perform this action.
- Do not make any non-script file executable. This is not necessary and potentially dangerous.
- From within the project folder, execute:
sudo bash installer.bash
-h, --help Print this help and exit.
-U, --update Update qemu.conf source file before install or uninstall.
-i, --install Install generate-evdev to system.
-u, --uninstall Uninstall generate-evdev from system.
- From any folder, execute:
sudo bash generate-evdev
- The CLI's shell (bash) should recognize that the script file is located in
/usr/local/bin
.
- The CLI's shell (bash) should recognize that the script file is located in
-h, --help Print this help and exit.
--dump-xml Dump QEMU commandline (XML) output to file.
--hugepages Include Hugepages as device for Libvirt/QEMU.
--output-event-paths Output Event device paths only.
--output-input-paths Output Input device paths only.
--restart-service Restart Libvirtd system service after setup.
--set-user Sets user ownership of Libvirt Input devices to current user. Default is root.
--undo-changes Undo changes; restore file backups.
/etc/libvirt/qemu.conf
/usr/local/bin/generate-evdev
/usr/local/etc/generate-evdev.d/
Did you encounter a bug? Do you need help? Notice any dead links? Please contact by raising an issue with the project itself.