Назад | Перейти на главную страницу

Смонтировать URL как cdrom / iso KVM / QEMU

Я ищу способ смонтировать ISO как компакт-диск, в соответствии с документами libvirt (указанными ниже), это должно быть возможно, дополнительно в вопросе, указанном ниже.

Я в курсе этот вопрос, однако ему уже 4 года, и он так и не пришел к какому-либо рабочему выводу.

Я взял пример из: http://libvirt.org/formatdomain.html#elementsDisks

</disk>
  <disk type='network' device='cdrom'>
    <driver name='qemu' type='raw'/>
    <source protocol="http" name="url_path">
      <host name="hostname" port="80"/>
    </source>
    <target dev='hde' bus='ide' tray='open'/>
    <readonly/>
  </disk>

Я не могу заставить это работать, я просто получаю:

Ошибка загрузки: не удалось прочитать с CDROM (код 0003)

Фактический фрагмент используемого XML:

<disk type='network' device='cdrom'>
    <driver name='qemu' type='raw'/>
    <source protocol="http" name="/debian-cd/current/amd64/iso-cd/debian-9.5.0-amd64-netinst.iso">
      <host name="mirror.bytemark.co.uk" port="80"/>
    </source>
    <target dev='hdb' bus='ide' tray='open'/>
    <readonly/>
  </disk>

libvirtd (libvirt) 3.9.0 Эмулятор QEMU версии 2.10.0

Может ли кто-нибудь предложить помощь или совет?

Я попытался поместить полный путь, включая fqdn, в url_path, с http: // и без него

Я обнаружил, что проблема, http находится в черном списке пакетов qemu-kvm-ev в centos 7

Вы можете использовать только https

Допустимый пример XML:

<disk type='network' device='cdrom'>
    <driver name='qemu' type='raw'/>
    <source protocol="https" name="/debian-cd/current/amd64/iso-cd/debian-9.5.0-amd64-netinst.iso">
      <host name="mirror.bytemark.co.uk" port="443"/>
    </source>
    <target dev='hdb' bus='ide' tray='open'/>
    <readonly/>
  </disk>

обратите внимание, что вы не можете использовать hdc, поскольку он, похоже, зарезервирован для локальной передачи ISO или физического cdrom.

Я попытался запустить один из них на существующей виртуальной машине в моей существующей системе libvirt 4.1.0:

    <disk type='network' device='cdrom'>
      <driver name='qemu' type='raw'/>
      <source protocol='https' path='/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1804.iso'>
        <host name='mirrors.edge.kernel.org' port='443'/>
      </source>
      <target dev='sdc' bus='sata'/>
      <readonly/>
      <address type='drive' controller='0' bus='0' target='0' unit='2'/>
    </disk>

XML не удалось проверить.

error: XML document failed to validate against schema: Unable to validate doc against /usr/share/libvirt/schemas/domain.rng
Extra element devices in interleave
Element domain failed to validate content

Я подозреваю, что кто-то давно написал эти примеры, думая, что эта функция может быть добавлена ​​в конечном итоге, но на самом деле этого никогда не было.

В пояснительном тексте под этими примерами говорится, что:

В protocol Атрибут определяет протокол доступа к запрошенному изображению. Возможные значения: «nbd», «iscsi», «rbd», «Sheepdog», «gluster» или «vxhs».

Страница руководства qemu также не дает намеков на то, что такая функциональность может существовать.

Я думаю, вы просто видите ошибку в документации.