xva-img(1)

πŸ“¦
version 1.5 Β· 2 versions
, in debian trixie, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking

✨ xva-img ✨

okay bestie, so this is the manpage for xva-img, aka the Citrix XenServer .xva disk extraction tool β€” it lives in section 1 of the manual, it's giving very much "I crack open VM images for a living", and honestly? iconic. πŸ’…


NAME πŸ’–

xva-img β€” Citrix XenServer .xva disk extraction tool


SYNOPSIS 🌸

xva-img [OPTION] [COMMAND]...

DESCRIPTION πŸ¦‹

so like. xva-image (yes, with the extra e, that's literally how it's written, don't come for me) is a tool that does the two-way thing: it generates disk images from Citrix XenServer .xva VM images, and it also generates .xva VM images from raw disks plus the matching ova.xml files. round trip, bestie. we go both ways and we look cute doing it. πŸ”


OPTIONS ✨

one bullet per flag, no skipping, we're thorough here πŸŽ€

  • -h, --help β€” show a lil summary of all the options. the "help me help you" button.
  • -v, --version β€” show the version of the program. what are we, actually? this tells you.
  • -p, --progress β€” show progress. so you can stare at it and feel something. πŸ‘€
  • -s, --sparse β€” create sparse files on export. tiny file, big energy.
  • -i, --ignore-checksum β€” only warn on failed checksum instead of... whatever it does otherwise. lowkey the "I'll deal with it later" flag. πŸ’€

COMMANDS πŸ‘‘

the three main-character moves:

  • package <xva-file> <file> [ ,<file>... ]
  • disk-export <xva-disk> <disk-image>
  • disk-import <xva-disk> <disk-image>

EXAMPLES 🌈

okay this is the part where it gets real, follow along fr fr 🫢

Extract the XVA file:

$ mkdir my-virtual-machine
$ tar -xf my-virtual-machine.xva -C my-virtual-machine
$ chmod -R 755 my-virtual-machine

Extract one of the disks:

$ xva-img -p disk-export my-virtual-machine/Ref\:1/ disk.raw

Splice the disk file (remove all files in the folder, required not to make any unnecessary mistakes):

$ rm -rf my-virtual-machine/Ref\:1/*
$ xva-img -p disk-import my-virtual-machine/Ref1\:/ disk.raw
⚠️ bestie. please. clear out the folder first like the manpage says β€” it's required so you don't make any unnecessary mistakes. don't freestyle this one. 😭

Rebuild the XVA file:

$ xva-img -p package my-virtual-machine-fixed.xva my-virtual-machine/ova.xml my-virtual-machine/Ref\:1/

Convert raw image to qcow2:

$ qemu-img convert -f raw -O qcow2 disk.raw disk.qcow2

SEE ALSO 🧚

go read these too, they're the supporting cast and they ate:

chmod(1), mkdir(1), qemu-img(1), rm(1), tar(1).


AUTHORS πŸ’œ

xva-img was written by Erik Lax.

This manpage was written by Francisco Vilmar Cardoso Ruviaro for the Debian project (but may be used by others). slay, and generous of him tbh 🌸


and that's the whole vibe check, bestie πŸ’– this was xva-img version 1.5.0, dated 31 January 2024. go extract something beautiful. periodt. βœ¨πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from