Client
To connect to a virtual machine using SPICE, you need a client application.
Windows installers
- virt-viewer Windows installer — can be downloaded from virt-manager download page
- UsbDk — A Windows filter driver developed for Spice USB redirection (windows client side) — UsbDk_1.0.22_x64.msi, UsbDk_1.0.22_x86.msi, (source code)
— https://gitlab.freedesktop.org/spice/win32/usbdk - usbredirect — USB redirection can now be achieved in Windows with the standalone usbredirect binary — usbredirect-x64-0.15.0.msi
Other clients
- Android client — aSPICE is a secure, SSH capable, open source SPICE protocol client that makes use of the LGPL licensed native libspice library. You can find and install aSPICE from play.google.com.
- Web client — a simple javascript client
- https://gitlab.freedesktop.org/spice/spice-html5
- Experimental OS X client
- launcher-mobile — A GPLv2 licensed cross-platform mobile client for both iOS and Android. Though mainly intended to be used as a client for flexVDI, it can also connect to conventional SPICE sessions.
- It is also avaiable in binary form: flexVDI Client at App Store, flexVDI Client at Play Store
Older releases
Older source releases can be found here. Old versions of spice-gtk can be found here.
Download Virt Viewer
Windows clients requires the
virt-viewer
tool to connect to their Virtual Machine.
Fix Windows registry
If virt-viewer won’t start automatically after when viewing the
virtual machine, add this to the Registry, or download spice.reg. (Thanks to @gmiranda).
Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\spice] @="URL:spice" "URL Protocol"="" [HKEY_CLASSES_ROOT\spice\DefaultIcon] @="C:\\Program Files\\VirtViewer v5.0-256\\bin\\remote-viewer.exe,1" [HKEY_CLASSES_ROOT\spice\Extensions] [HKEY_CLASSES_ROOT\spice\shell] @="open" [HKEY_CLASSES_ROOT\spice\shell\open] [HKEY_CLASSES_ROOT\spice\shell\open\command] @="\"C:\\Program Files\\VirtViewer v5.0-256\\bin\\remote-viewer.exe\" \"%1\""
Add USB Device for passthrough from the client
Add an audio device to a VM
Introduction
SPICE (Simple Protocol for Independent Computing Environments) is an open remote computing solution built for virtual environments which allows users to view a computing «desktop» environment. The integrating of Spice into Proxmox VE provides a solution for interaction with virtualized desktop devices, like keyboard, mouse, audio and video. Interaction between front-end and back-end is done using Virtual Device Interfaces (VDI).
Spice achieves a user experience similar to an interaction with a local machine. It is suitable for both LAN and WAN usage, without compromising on the user experience.
Using Spice on Proxmox VE is easy and secure. It is integrated in the cluster environment, the user- and authentication system — and of course, all traffic is fully encrypted.
Spice was first introduced with Proxmox VE 3.1.
Requirements for SPICE
In order to use Spice you need the following:
- Spice client on your desktop OS
- Spice drivers inside your VM (VirtIO, QXL Graphic card drivers)
SPICE client
- Windows: virt-viewer 0.5.6 or higher, http://www.spice-space.org/download.html
- Linux: virt-viewer 0.5.6 or higher
- OS X (not yet working as expected): virt-viewer 0.5.7 or higher, https://www.spice-space.org/osx-client.html
Enable SPICE for a VM
Spice is not enabled by default. To enable it set the Display in the Hardware section of the VM to Spice (shown in the screenshot at the top). Increase the memory if you intend to use SPICE with high resolutions. 32 MiB is plenty for 4K resolutions.
Caution
Before changing the Display setting to SPICE check the following section. You may need to install QXL/SPICE drivers depending on the guest OS.
OS specific settings for VM
Windows
Windows 7/8/10 and Windows 2012/2016
Fully supported. Before you switch the Display to SPICE install the Windows SPICE guest tools 0.132 or higher (spice-guest-tools-0.132.exe or higher)
- http://www.spice-space.org/download.html
Linux
All Linux distributions released after 2011 have the necessary qxl driver included as a part of the Xorg package.
Start your SPICE session
A Spice session can be started by clicking directly on the Console button or by opening the Console sub menu and selecting Spice explicitly. This will trigger the download of the connection config file.
Open this file with Remote Viewer to start the session.
The association is automatic for Chrome and Internet Explorer (they use the mime type association from the OS).
For Firefox, the association must be done manually, as Firefox has his own internal mime type association (See Options/Applications).
Using client USB devices
You can pass USB devices from the client into the VM. Add a USB device of the type Spice Port in the Hardware section of the VM.
Old methods of editing the config file directly are not necessary anymore with recent versions of Proxmox VE.
Caution
- The Windows version of the virt-viewer does not support it.
Using Audio
Audio devices can be added in the Hardware section of the VM. Three audio devices are supported:
- ich9-intel-hda: emulates Intel HDA Audio on ICH9 chipsets
- intel-hda: emulates Intel HDA Audio on ICH6 chipsets. Use if the ICH9 one does not work properly
- AC97: useful for older OS`s like Windows XP
Manually editing the config file of the VM is not necessary with recent versions of Proxmox VE.
SPICE Enhancements
SPICE Enhancements are optional features that can improve the remote viewer experience.
They can be enabled in the Options panel of a VM.
Two enhancements are currently available:
- Foldersharing
- Videostreaming
Foldersharing enables you to share a local folder with the VM you are connecting to. The «spice-webdavd» daemon needs to be installed in the VM.
HINT: only the Linux version of Virt-viewer (remote-viewer) supports this.
Videostreaming will encode fast refreshing areas in a lossy video stream. A general recommendation cannot be given but depending on your situation this can greatly improve the performance.
More information can be found in the reference manual by clicking the «Help» button in the dialog to enable the enhancements.
Troubleshooting
Can’t start Spice session
If you can’t start a Spice session from the PVE Web gui, you can try the following shell script:
https://git.proxmox.com/?p=pve-manager.git;a=blob_plain;f=spice-example-sh;hb=HEAD
Guest resolution does not resize to Remote Viewer window
Make sure the spice-vdagent service is installed and running in the VM.
If the guest stops resizing once you go higher than a certain size it is possible that the video memory is not enough. Increase the Memory settings of the Display in the Hardware section of the VM by a few MiB. For the changes to take effect you have to shutdown the VM and do a clean start.
Alternatives
Depending on your situation SPICE might not be the best solution.
Alternatives are:
- RDP (Remote Desktop Protocol) for Windows Guests
- X2GO for Linux Guests
Video Tutorials
- Proxmox VE Youtube channel
Provide feedback
Saved searches
Use saved searches to filter your results more quickly
Sign up
Appearance settings
Настройка сервера
Настройка клиента
Окружение
- Версия РЕД ОС: 7.3
- Редакция ОС: Все
- Конфигурация: Рабочая станция, Сервер графический
- Версия ПО: spice-server-0.15.1-3.el7.x86_64 xorg-x11-server-Xspice-0.1.5-18.el7.x86_64, openssh-server-8.9p1-13, spice-gtk-tools-0.38-1
Настройка сервера
Важно!
После выполнения настроек и дальнейшей перезагрузки управление сервером будет доступно только через удаленный доступ.
Установка сервера происходит в консоли с root-правами.
su - dnf install xorg-x11-server-Xspice
Для удаленного доступа к консоли ssh:
dnf install openssh-server systemctl start sshd systemctl enable sshd.service
Присвойте серверу статический Ip-адрес.
В файле /etc/X11/xorg.conf прописывается настройка SPICE-сервера и использование виртуальной видеокарты QXL.
nano /etc/X11/xorg.conf
Для удобства редактирования файла /etc/X11/xorg.conf рекомендуется скопировать в него содержимое:
Section "Device"
Identifier "XSPICE"
Driver "spiceqxl"
# Enable regular port. Either this or SpiceTlsPort, or one of XSPICE_PORT or
# XSPICE_TLS_PORT environment variables must be specified
# Defaults to 5900.
Option "SpicePort" "5900"
# Do not request any password from client
Option "SpiceDisableTicketing" "0"
# Set password client will be required to produce.
Option "SpicePassword" "password"
EndSection
Section "InputDevice"
Identifier "XSPICE POINTER"
Driver "xspice pointer"
EndSection
Section "InputDevice"
Identifier "XSPICE KEYBOARD"
Driver "xspice keyboard"
EndSection
Section "Monitor"
Identifier "Configured Monitor"
EndSection
Section "Screen"
Identifier "XSPICE Screen"
Monitor "Configured Monitor"
Device "XSPICE"
DefaultDepth 24
EndSection
Section "ServerLayout"
Identifier "XSPICE Example"
Screen "XSPICE Screen"
InputDevice "XSPICE KEYBOARD"
InputDevice "XSPICE POINTER"
EndSection
# Prevent udev from loading vmmouse in a vm and crashing.
Section "ServerFlags"
Option "AutoAddDevices" "False"
EndSection
Важно!
Здесь задается пароль сервера, если оставить без изменений, то пароль по умолчанию будет password.
Set password client will be required to produce.
Option "SpicePassword" "password"
EndSection
Важно!
После выполнения настроек и дальнейшей перезагрузки управление сервером будет доступно только через удаленный доступ.
Настройка клиента
Настройка клиента производится одной командой через терминал с использованием root-прав.
dnf install spice-gtk-tools
Oбратиться к серверу можно через терминал командой:
spicy
Появится окно, в котором вам нужно ввести IP-адрес сервера и порт 5900.
После этого потребуется ввести пароль для входа на сервер.
При успешной аутентификации у вас появится окно сервера, где вам нужно будет авторизоваться в системе сервера под локальной учетной записью.
Эта информация оказалась полезной? ДА НЕТ
Дата последнего изменения: 06.02.2025
Если вы нашли ошибку, пожалуйста, выделите текст и нажмите Ctrl+Enter.