(netlab-libvirt)= # Libvirt Utilities **netlab libvirt** performs these *libvirt*-related functions: * **package** -- create a Vagrant box from a VM virtual disk in `qcow2` or `vmdk` format. * **config** -- display box building recipe. ```text % netlab libvirt Usage: netlab libvirt The 'netlab libvirt' command can execute the following actions: package Help you create a Vagrant box from a qcow/vmdk virtual disk config Print the build recipe for the specified Vagrant box Use 'netlab libvirt --help' to get action-specific help ``` (netlab-libvirt-package)= ## Building a Vagrant Box The **netlab libvirt package** command: * Creates a temporary build directory under the `/tmp` directory * Copies the specified virtual disk into the build directory. * Starts a VM from the copied virtual disk and connects your terminal to its console * When you disconnect from the VM (follow the build recipe), stops and destroys the VM and builds a Vagrant box * Asks you for the software version you're using and installs the Vagrant box ``` usage: netlab libvirt package [-h] [-v] [-q] {arubacx,asav,csr,dellos10,eos,iosv,iosxr,nxos,routeros7,vptx,vsrx} disk Package a virtual machine into a libvirt Vagrant box positional arguments: {arubacx,asav,csr,dellos10,eos,iosv,iosxr,nxos,routeros7,vptx,vsrx} Network device you want to create disk Virtual machine disk (vmdk or qcow2) options: -h, --help show this help message and exit -v, --verbose Verbose logging (add multiple flags for increased verbosity) -q, --quiet Report only major errors ```