qemu-img - маніпуляції з образами дисків віртуальних машин (створення, конвертація)

У цій статті описана коротка інформація, як користуватися утилітою qemu-img для створення дисків і як зробити конвертацію з одного формату в інший. qemu-img працює з наступними форматами: raw, qcow2, qcow, cow, vmdk, cloop, vpc (vhd)

Для маніпуляції з образами використовуються такі команди:

  • create - створення нового образу диска
  • check - перевірка образу диска на помилки
  • convert — конвертація існуючого диска в інший формат
  • info — отримання інформації про існуючий образ диска
  • snapshot - керує знімками станів (snapshot) існуючих образів дисків
  • commit - записує зроблені зміни на існуючий образ диска
  • rebase - створює новий базовий образ на основі існуючого

список не весь, всі параметри див. man qemu-img

Як створити новий образ диска у форматі qcow2

створимо образ диска розміром 100 Gb у форматі qcow2

Як подивитися інформацію про образ диска

Як конвертувати образ диска з формату raw в qcow2

Як змонтувати образ диска

Важливе зауваження! в жодному разі не монтуєте диск запущеній віртуалці, дані будуть втрачені. Іноді може знадобитися змонтувати образ диска в системі, не завантажуючи віртуальну машину. Робиться це так, для формату raw:

З диском у форматі qcow2 під час монтування просить вказати тип fs

Після завершення роботи з диском відключаємо

Створення snapshot

Перед створенням snapshot необхідно вимкнути віртуальну машину.

Один зі способів створення qemu-img — це перенаправлення запису в новий образ, а старий образ диска використовується для читання. Для створення ного snapshot образу з існуючого original.qcow2Використовуйте прапорець -b для створення резервної копії (backing_file).

Наступним кроком редагуємо xml файл через virsh edit потрібної віртуальної машини та вказуємо новий (створений) образ диска snapshot.qcow2

Після цього можна запускати віртуальну машину. У результаті даних маніпуляцій ми маємо тепер 2 образи один читання і змінюватися нічого очікувати, а другий запису, тобто. усі маніпуляції та зміни даних будуть відображені на другому образі snapshot.qcow2.

Якщо виникла потреба перенести дані з snapshot на основний диск, зробити це можна так: