14 октября 2009

Работа с образами дисков виртуальных машин через libguestfs

В Fedora 11 включен ряд инструментов, значительно упрощающих работу с образами дисков виртуальных машин из операционной системы хоста. Утилиты, разработанные в рамках libguestfs, используют код ядра Linux и qemu и, соответственно, позволяют получить доступ к файловым системам, с которыми умеют работать Linux и qemu, включая ext2/3/4, btrfs, FAT, NTFS, тома LVM и различные варианты схем хранения разделов Virtual Machine DisK format (vmdk) и qcow1/2. Также библиотека корректно работает с метками SELinux.

Для установки в Fedora 11, Rawhide или RHEL, использующем репозиторий EPEL, необходимо набрать команду:

yum install '*guestfs*' guestfish

Библиотека и утилиты распространяются по лицензии GNU GPL. Есть сборки и для других дистрибутивов, включая Debian.

guestfish - интерактивный командный интерпретатор, работающий с гостевой файловой системой. Включает в себя более двух сотен команд для работы с файлами, каталогами и файловой системой. Полностью задействует всю функциональность guestfs API.

virt-cat - Просмотр файла внутри ФС гостя

virt-edit - Редактирование файла внутри ФС гостя

virt-rescue - Аналог rescue mode при загрузке с установочного диска Fedora/RHEL. Во время использования гостевая ВМ должна быть выключена.

virt-inspector - Отображает версию ОС, ядра, драйвера, точки монтирования, приложения и другую информацию о виртуальной машине. Для доступа к информации ВМ Windows используется reged.

virt-df - Отображает объем свободного места на ФС ВМ

В разработке находятся и другие утилиты, например, v2v-snapshot - создает snapshot дисков ВМ или virt-v2v для конвертации ВМ из других гипервизоров в KVM c libvirt.

На страничке приведен ряд примеров скриптов, использующих libguestfs, например: клонирования виртуальных машин, экспорта домашнего каталога пользователя ВМ в архив tar, список RPM-пакетов внутри ВМ, список устройств, разделов и слоев абстракции LVM, и другие.

Комментариев нет: