База знаний VMmanager

Как зафиксировать версии libvirt и QEMU на узлах

Описание

При миграции виртуальных машин (ВМ) возникают ошибки из-за разных версий QEMU и libvirt на узлах кластера. Требуется зафиксировать версии этих компонентов для обеспечения стабильной миграции.

Для корректной работы миграции между узлами кластера требуются идентичные версии QEMU и libvirt на всех задействованных серверах. После независимых обновлений ОС версии могут отличаться, что делает перенос ВМ невозможным.

Инструкция из статьи может быть полезна, если:

  • при миграции ВМ возникают ошибки из-за несовпадения версий QEMU и libvirt;
  • запланировано обновление и требуется избежать последующей рассинхронизации версий;
  • требуется зафиксировать текущую конфигурацию.

Решение

Чтобы зафиксировать версии пакетов libvirt и QEMU:

  1. Подключитесь к узлу кластера по SSH. Подробнее о подключении по SSH см. в статье Настройка рабочего места.
  2. Обновите пакеты ОС до актуальной версии:
    1. На AlmaLinux:
      sudo dnf update
    2. На AstraLinux. Выполните обновление с помощью утилиты astra-update. Подробнее см. в статье Инструменты для установки оперативных обновлений Astra Linux базы знаний Astra Linux.
  3. Зафиксируйте версии:
    Для AlmaLinux
    sudo dnf install python3-dnf-plugin-versionlock
    sudo dnf versionlock add qemu-*
    sudo dnf versionlock add libvirt-*
    Для Astra Linux, Ubuntu
    sudo apt-mark hold qemu-*
    sudo apt-mark hold libvirt-*
  4. Убедитесь, что версии зафиксированы:
    AlmaLinux
    sudo dnf versionlock list
    Пример вывода
    $ sudo dnf versionlock list
    Last metadata expiration check: 0:01:23 ago on Tue 2024-01-16 10:30:45 UTC.
    qemu-*
    libvirt-*
    0:qemu-kvm-core-8.1.0-10.el9.*
    0:libvirt-9.0.0-2.el9.*
    Astra Linux, Ubuntu
    sudo apt-mark showhold
    Пример вывода
    $ sudo apt-mark showhold
    libvirt-daemon-system
    libvirt-clients
    qemu-system-x86
    qemu-utils
    qemu-kvm
  5. Повторите инструкцию для всех узлов кластера.

Как снять фиксацию версий

Чтобы разрешить обновление пакетов libvirt и QEMU, снимите блокировку:

  1. Подключитесь к узлу кластера по SSH. Подробнее о подключении по SSH см. в статье Настройка рабочего места.
  2. Выполните команды:
    AlmaLinux
    sudo dnf versionlock delete qemu-*
    sudo dnf versionlock delete libvirt-*
    Astra Linux, Ubuntu
    sudo apt-mark unhold qemu-*
    sudo apt-mark unhold libvirt-*
  3. Убедитесь, что блокировка снята:
    AlmaLinux
    sudo dnf versionlock list
    Astra Linux, Ubuntu
    sudo apt-mark showhold

    Ожидаемый результат: вывод пустой или содержит содержит записи, не связанные с пакетами qemu-* и libvirt-*.

  4. Повторите процесс на всех узлах, где требуется снять фиксацию версий.

После выполнения указанных команд обновление версий libvirt и QEMU будет выполняться в стандартном режиме. 

Дата последнего обновления статьи: 15.01.2026. Статья подготовлена техническими писателями ISPsystem