libguestfs: få tillgång till och ändra diskavbildningar av virtuella maskiner

libguestfs

Det är kanske inte många som vet libguestfs, ett bibliotek skrivet i C och en uppsättning verktyg som låter dig komma åt och ändra de virtuella diskavbildningarna som används i virtuella maskiner. Dessutom kommer du att kunna arbeta med flera Linux KVM-baserade virtualiseringsplattformar, och VM-bilderna kommer att monteras direkt på värden med hjälp av FUSE-modulen och guestmount/guestunmount-verktygen.

En annan trevlig sak med libguestfs är det kan komma åt nästan alla FS, eller filsystem, och det inkluderar all Linux (ext2, ext3, ext4, XFS, btrfs,...), MS Windows (VFAT och NTFS), macOS (HFS och HFS+), såväl som BSD och till och med LVM2 volymhantering. Allt detta i både MBR och GPT.

Som för typer av virtuella diskar som du kan komma åt kan vara:

  • qcow2
  • VirtualBox .vdi
  • VMWare .vmdk
  • Hyper-V .vhd och .vhdx

Du kan också komma åt och ändra filer, lokala enheter, ISO-bilder, SD-minneskort eller göra det på distans via protokoll som:

  • FTP
  • HTTP
  • SSH
  • iSCSI
  • NBD
  • GlusterFS
  • Ceph
  • Sheepdog
  • och så vidare

Vidare, libguestfs behöver inte privilegier, vilket också är intressant. Tack vare detta projekt kommer du att ha olika kommandoradsverktyg som guestfish, guestmount, guestunmount, virt-rescue för att fixa omstartbara virtuella datorer, virt-cat, virt-tar, etc.

libguestfs fungerar också som ett API för att kunna länka ledningsprogram i olika programmeringsspråk:

  • C
  • C + +
  • Perl
  • Python
  • Rubin
  • java
  • PHP
  • Haskell
  • Erlang
  • lua
  • C#
  • och så vidare

Du kan också använda det från skript, vilket är mycket praktiskt när man administrerar system. Dessutom kan detta projekt av Richard Jones installeras från repos för många av de välkända distroerna på detta sätt:

  • Debian / Ubuntu och derivat
sudo apt install libguestfs-tools

  • Fedora/CentOS/RHEL och derivat
sudo dnf install libguestfs

  • Arch Linux och derivat
sudo pacman -Sy libguestfs

Förresten, om du är det använder libvirt och du försöker anropa något av verktygen eller verktygen som ingår i libguestfs, kommer du att få en fel så här:

libguestfs: error: could not create appliance through libvirt.

La lösning det är så enkelt som att exportera en variabel som "direkt" så här:

export LIBGUESTFS_BACKEND=direct

Mer information - Officiell hemsida


Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  1. Ansvarig för data: AB Internet Networks 2008 SL
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.