Заметки о решаемых задачах АйТишников

Сделал - запиши. Нашёл - сохрани :)

Прошу прощения за рекламу на сайте. Я постарался сделать это максимально ненавязчиво и по минимуму. При чтении заинтересовавших вас статей она не будет вам мешать.
И если есть возможность поставить мой сайт в исключения у блокировщика рекламы, я буду очень признателен вам.

Как настроить двухсторонний буфер обмена между Debian 13 (KVM) и Windows 10 в гостевой ВМ

Как настроить двухсторонний буфер обмена между Debian 13 (KVM) и Windows 10 в гостевой ВМ

 

 

 

Если у вас на хосте 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

  1. Скачайте установщик с официального репозитория:

    Обычно нужен пакет Spice Guest Tools for Windows (включает драйверы QXL, SPICE агент и т.д.)

  2. Запустите установку внутри Windows 10 гостя и следуйте инструкциям.

  3. Перезагрузите гостевую ОС после установки.

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` для подключения с поддержкой буфера обмена и передачи файлов

 

23 июня 2025, 18:57    Александр Linux 0    204 0

 

 

 

 



Комментарии ()

    Вы должны авторизоваться, чтобы оставлять комментарии.