Коротко о главном
KVM — это виртуализация на уровне ядра, а virt-manager — удобный графический интерфейс для неё. Вместе они позволяют запускать полноценные виртуальные машины с почти нативной производительностью: подойдёт для Windows, тестовых систем и изолированных окружений.
Виртуальная машина изолирует систему целиком, включая ядро. Это полезно, когда нужна другая ОС, рискованное ПО или чистое окружение для проверки обновлений — без второго компьютера.
Большинство проблем с KVM и virt-manager сводится к нескольким повторяющимся ошибкам. Ниже — что проверить в первую очередь и как не усугубить ситуацию.
Почему это происходит
Ошибки почти всегда связаны с контекстом: другая версия пакета, не тот пользователь, устаревший конфиг или команда из руководства для другой системы. KVM и virt-manager не исключение. Поэтому сначала фиксируем исходное состояние, затем меняем одну вещь за раз.
Типичные ошибки
Ниже — сбои, которые встречаются чаще всего. Перед исправлением сохраните текущие конфиги и запишите, какие изменения вносите: так проще откатиться.
1. Нет доступа к libvirt
Проверьте группы libvirt и kvm, перезайдите в сессию и убедитесь, что служба запущена.
2. VM не стартует
Смотрите журнал libvirt и вывод virsh. Часто причина — отсутствующий ISO, нехватка памяти или конфликт сети.
3. Очень медленно работает сеть
Переключите модель сетевой карты на virtio и установите драйверы в гостевой системе.
Как настроить правильно
Правильная последовательность проста: проверить версию и зависимости, сделать резервную копию конфигурации, внести минимальное изменение, проверить логи и только потом двигаться дальше.
Установка
В Debian, Ubuntu и Linux Mint используется пакетный менеджер APT:
sudo apt install qemu-kvm libvirt-daemon-system virt-manager bridge-utils
В Fedora и RHEL-совместимых системах пакет ставится через DNF:
sudo dnf install @virtualization virt-manager
В Arch Linux и производных пакет доступен в официальных репозиториях:
sudo pacman -S qemu-full libvirt virt-manager edk2-ovmf
1. Проверьте аппаратную поддержку
Без VT-x или AMD-V виртуализация будет медленной. Проверьте флаги процессора и модули ядра.
grep -E 'vmx|svm' /proc/cpuinfo | head -1
lsmod | grep kvm
systemctl status libvirtd --no-pager
2. Добавьте пользователя в группы
Для управления через virt-manager нужны права на libvirt и KVM. После изменения групп перезайдите в сессию.
sudo usermod -aG libvirt,kvm $(whoami)
id
3. Создайте сеть
Стандартная сеть libvirt даёт NAT и DHCP. Для доступности из локальной сети используйте мост, но настройте его аккуратно, чтобы не потерять связь с хостом.
virsh net-list --all
virsh net-start default
virsh net-autostart default
4. Создайте виртуальную машину
Выберите ISO, память и диск. Для Windows включите UEFI и virtio-драйверы, иначе установка будет медленной.
virt-install --name test --ram 4096 --vcpus 2 --disk size=30 --cdrom ~/iso/ubuntu.iso --os-variant ubuntu24.04
Рабочий конфиг
Начните с минимального рабочего варианта. Не копируйте большой конфиг целиком: добавляйте параметры по одному и проверяйте результат после каждого изменения.
# /etc/libvirt/qemu.conf
user = "libvirt-qemu"
# проверка модулей
lsmod | grep kvm
Практические советы
Эти рекомендации проверены на повседневных задачах. Начните с тех, которые закрывают вашу текущую боль, а не со всего списка сразу.
Совет 1. Не запускайте виртуальные машины на диске, заполненном почти полностью
Не запускайте виртуальные машины на диске, заполненном почти полностью: образы растут.
Совет 2. Для Windows установите virtio-win и драйверы, иначе сеть и диск будут
Для Windows установите virtio-win и драйверы, иначе сеть и диск будут медленными.
Совет 3. Проброс USB делается через настройки VM, но устройство станет недоступ
Проброс USB делается через настройки VM, но устройство станет недоступно хосту.
Совет 4. Мост на Wi-Fi часто не работает: используйте NAT или проводное соедине
Мост на Wi-Fi часто не работает: используйте NAT или проводное соединение.
Профилактика
Большинство повторяющихся сбоев с KVM и virt-manager связано не с ошибкой в самой программе, а с окружением: обновились зависимости, изменился путь, закончилось место или другой администратор поправил конфиг. Поэтому профилактика начинается с фиксации исходного состояния.
Сохраните рабочий конфиг в систему контроля версий, добавьте короткий комментарий о том, зачем нужен каждый нестандартный параметр, и запишите команду проверки. Через месяц вы скажете себе спасибо: восстановить логику по чужому файлу без пояснений почти невозможно.
Чек-лист
- Версия пакета и конфигурация зафиксированы и доступны для сравнения.
- Есть автоматическая проверка синтаксиса перед перезапуском службы.
- Журналы ротуются, а диск не заполняется ими за неделю.
- Изменения проходят через тестовый стенд, а не сразу на рабочий сервер.
Итог
Большинство ошибок с KVM и virt-manager лечится не переустановкой, а проверкой конфигурации, логов и прав доступа. Действуйте по одному изменению за раз — и причина быстро найдётся.