Если у вас на хосте Debian 13 запущена виртуальная машина Windows 10 через KVM/QEMU и вы хотите удобно обмениваться текстом и файлами между хостом и гостем — двухсторонний буфер обмена станет очень полезным инструментом. В этой статье подробно расскажу, как это реализовать.
Кратко о проблеме
- KVM/QEMU по умолчанию не предоставляет встроенного механизма общего буфера обмена, как, например, VirtualBox или VMware.
- Для Windows-гостя можно использовать SPICE с QEMU и соответствующий клиент, а также QEMU Guest Agent и драйверы для гостя.
- Для обмена буфером обмена и файлами нужно настроить несколько компонентов.
Что понадобится
- KVM/QEMU с поддержкой SPICE на хосте Debian 13
- QEMU Guest Agent и SPICE Guest Tools в Windows 10 госте
- Настроенный виртуальный графический вывод с SPICE
- Клиент для подключения к ВМ с поддержкой SPICE (например, `virt-viewer` или `virt-manager`)
Шаг 1. Проверьте и установите необходимые пакеты на Debian 13 (хост)
Убедитесь, что у вас установлены:
sudo apt update
sudo apt install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virt-manager spice-client-gtk
- `virt-manager` — графический менеджер виртуальных машин, удобен для настройки и подключения
- `spice-client-gtk` — SPICE клиент для подключения с поддержкой буфера обмена и передачи файлов
Шаг 2. Настройте виртуальную машину с использованием SPICE
2.1. Настройка видеокарты и графического вывода
В XML-конфиге вашей ВМ (через `virsh edit vm-name` или через `virt-manager`) должно быть примерно следующее:
<graphics type='spice' port='-1' autoport='yes' listen='127.0.0.1'>
<listen type='address' address='127.0.0.1'/>
<clipboard copypaste='yes'/>
<filetransfer enable='yes'/>
</graphics>
<video>
<model type='qxl' ram='65536' vram='65536' vgamem='16384' heads='1'/>
<acceleration accel3d='yes'/>
</video>
- `graphics` с типом `spice` — включает SPICE-сервер для ВМ
- `clipboard copypaste='yes'` — разрешает буфер обмена
- `filetransfer enable='yes'` — разрешает передачу файлов
- Видеокарта `qxl` — рекомендуемый тип для SPICE, обеспечивает лучшую интеграцию
Если вы редактируете XML вручную, сохраните изменения и перезапустите ВМ.
Шаг 3. Установите SPICE Guest Tools и QEMU Guest Agent в Windows 10
3.1. Установка SPICE Guest Tools
Скачайте установщик с официального репозитория:
Обычно нужен пакет Spice Guest Tools for Windows (включает драйверы QXL, SPICE агент и т.д.)
Запустите установку внутри Windows 10 гостя и следуйте инструкциям.
Перезагрузите гостевую ОС после установки.
3.2. Установка QEMU Guest Agent
- QEMU Guest Agent — служба, которая позволяет хосту управлять гостем, получать состояние и выполнять команды.
- В составе SPICE Guest Tools он обычно уже есть, но можно установить отдельно.
Проверьте, что служба `QEMU Guest Agent` запущена в Windows (через `services.msc`).
Шаг 4. Запустите ВМ и подключитесь через SPICE клиент
4.1. Через virt-manager
- Запустите `virt-manager`
- Откройте вашу ВМ
- Подключитесь к ней — по умолчанию будет использоваться SPICE, если настроено
4.2. Через командную строку
Если вы запускаете ВМ вручную через `qemu-system-x86_64`, пример запуска с SPICE:
qemu-system-x86_64 \
-m 4G -cpu host -smp 4 \
-drive file=/var/lib/libvirt/images/windows10.qcow2,format=qcow2 \
-device virtio-net-pci,netdev=net0 \
-netdev user,id=net0 \
-vga qxl \
-spice port=5930,addr=127.0.0.1,disable-ticketing=on,clipboard=on,filetransfer=on \
-device virtio-serial-pci \
-chardev spicevmc,id=vdagent,name=vdagent \
-device virtserialport,chardev=vdagent,name=com.redhat.spice.0
- Обратите внимание на параметры SPICE и virtio-serial для агента
Шаг 5. Использование буфера обмена и передачи файлов
- При подключении к ВМ через SPICE клиент (например, `virt-viewer` или `virt-manager`), буфер обмена между хостом и гостем будет работать автоматически.
- Вы можете копировать текст на хосте и вставлять в Windows и наоборот.
- Для передачи файлов можно использовать drag-and-drop или меню передачи файлов в клиенте SPICE.
Дополнительные советы
- Обновляйте драйверы SPICE и QXL в Windows — это повысит стабильность и производительность.
- Проверьте настройки брандмауэра Windows — иногда он блокирует работу QEMU Guest Agent.
- Используйте virtio-драйверы для сетевых и дисковых устройств — это улучшит производительность гостя.
- Если буфер обмена не работает, попробуйте перезапустить SPICE Guest Tools в госте и переподключиться.
- Если вы хотите использовать RDP или другие протоколы, то буфер обмена можно настраивать отдельно, но SPICE — самый удобный вариант для KVM.
Резюме
Компонент | Действие |
Debian 13 хост | Установить `virt-manager`, `spice-client-gtk`, `qemu-kvm` |
ВМ конфигурация | Включить SPICE с `<graphics type='spice' ...>`, видеокарту `qxl` |
Windows 10 гость | Установить SPICE Guest Tools (QXL драйверы, SPICE агент) |
Запуск и подключение | Использовать `virt-manager` или `virt-viewer` для подключения с поддержкой буфера обмена и передачи файлов |
Комментарии ()