QEMU QMP Как найти устройство для использования drive_backup?

Я хотел бы использовать команду backup_drive для копирования дисков и их снимка в одном образе.

К сожалению, каждый раз, когда я использую команду:

virsh qemu-monitor-command VM_NAME --hmp drive_backup device=drive-ide0-0-0 sync=full target=/mnt/mig-kvm/test_sync_snap.qcow2

Но я получаю эту ошибку:

Device 'device=ide0-0-0' not found

Я пробовал устройства, которые я нашел с "domblklist" и "execute query-block"

Кто-то может дать мне пример, чтобы знать, что именно "устройство" мне нужно поместить в команду backup_drive?

я уже проверил этот пост безуспешно: QEMU не может найти ни устройство, ни имя_узла

Спасибо!

С наилучшими пожеланиями, NB

1 ответ

Решение

info block Команда monitor покажет вам блоки устройств, подключенных к гостю.

[root@makrura ~]# virsh qemu-monitor-command hyperv-server-2016 --hmp "info block"
drive-scsi0-0-0-0 (#block118): /var/lib/libvirt/images/hyperv-server-2016.qcow2 (qcow2)
    Attached to:      scsi0-0-0-0
    Cache mode:       writeback

drive-sata0-0-1 (#block396): /var/lib/libvirt/isos/14393.0.160916-1106.RS1_REFRESH_SERVERHYPERCORE_OEM_X64FRE_EN-US.ISO (raw, read-only)
    Attached to:      sata0-0-1
    Removable device: not locked, tray closed
    Cache mode:       writeback

drive-sata0-0-2 (#block542): /usr/share/virtio-win/virtio-win-0.1.141.iso (raw, read-only)
    Attached to:      sata0-0-2
    Removable device: not locked, tray closed
    Cache mode:       writeback

Здесь имя дискового устройства drive-scsi0-0-0-0, (Другие блочные устройства являются виртуальными устройствами CDROM.) Но что drive_backup ожидает это имя_узла, которое появляется в скобках, т.е. #block118,

Также кажется, что у вас не совсем правильный синтаксис. Из справки:

drive_backup [-n] [-f] [-c] device target [format] -- initiates a point-in-time
            copy for a device. The device's contents are
            copied to the new image file, excluding data that
            is written after the command is started.
            The -n flag requests QEMU to reuse the image found
            in new-image-file, instead of recreating it from scratch.
            The -f flag requests QEMU to copy the whole disk,
            so that the result does not need a backing file.
            The -c flag requests QEMU to compress backup data
            (if the target format supports it).

Так что вы бы сделали что-то вроде:

[root@makrura ~]# virsh qemu-monitor-command hyperv-server-2016 --hmp "drive_backup -f #block118 /tmp/test.qcow2 qcow2"


[root@makrura ~]# ls -l /tmp/test.qcow2 
-rw-r--r--. 1 qemu qemu 982712320 Aug  7 11:19 /tmp/test.qcow2
Другие вопросы по тегам