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

libguestfs

Возможно, не многие знают libguestfs — библиотека, написанная на C, и набор инструментов, которые позволяют вам получать доступ и изменять образы виртуальных дисков, используемые в виртуальных машинах.. Кроме того, вы сможете работать с несколькими платформами виртуализации на базе Linux KVM, а образы ВМ будут монтироваться непосредственно на хост с помощью модуля FUSE и инструментов guestmount/guestunmount.

Еще одна приятная особенность libguestfs заключается в том, что может получить доступ практически к любой ФС, или файловая система, включая все Linux (ext2, ext3, ext4, XFS, btrfs,…), MS Windows (VFAT и NTFS), macOS (HFS и HFS+), а также BSD и даже управление томами LVM2. Все это как в MBR, так и в GPT.

Что касается типы виртуальных дисков к которым вы можете получить доступ, может быть:

  • qcow2
  • ВиртуалБокс.vdi
  • VMWare.vmdk
  • Hyper-V .vhd и .vhdx

Вы также можете получать доступ и изменять файлы, локальные устройства, образы ISO, карты памяти SD или делать это удаленно через протоколы как:

  • Ftp
  • HTTP
  • SSH
  • ISCSI
  • NBD
  • GlusterFS
  • Ceph
  • овчарка
  • и так далее

Кроме того, libguestfs не нужны привилегии, что тоже интересно. Благодаря этому проекту у вас будут различные инструменты командной строки, такие как guestfish, guestmount, guestunmount, virt-rescue для исправления не загружаемых виртуальных машин, virt-cat, virt-tar и т. д.

libguestfs также действует как API чтобы иметь возможность связывать программы управления на разных языках программирования:

  • C
  • C + +
  • Perl
  • Питон
  • Ruby
  • Java
  • PHP
  • Haskell
  • Erlang
  • Lua
  • C#
  • и так далее

Вы также можете использовать его из скриптов, что очень удобно при администрировании систем. Кроме того, этот проект Ричарда Джонса можно установить из репозиториев многих известных дистрибутивов следующим образом:

  • Debian / Ubuntu и производные
sudo apt install libguestfs-tools

  • Fedora/CentOS/RHEL и производные
sudo dnf install libguestfs

  • Arch Linux и производные
sudo pacman -Sy libguestfs

Кстати, если вы использование libvirt и вы попытаетесь вызвать любую из утилит или инструментов, включенных в libguestfs, вы получите ошибка как это:

libguestfs: error: could not create appliance through libvirt.

La решение это так же просто, как экспортировать переменную как «прямую», например:

export LIBGUESTFS_BACKEND=direct

Больше информации - Официальный сайт


Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: AB Internet Networks 2008 SL
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.