The following is a guide for deleting paravirtualized (“PV”) DomU virtual machines in Xen Project Hypervisor using xen-tools.
Although xen-tools supports loopback, EVMS, and LVM partition types, this guide focuses on LVM-based DomU only. That being said, the information provided below may be easily adapted for use with loopback and EVMS-based DomU.
If you’re looking for a tutorial on creating DomU virtual machines using xen-tools, please refer to Using xen-tools to Create DomU Virtual Machines in Xen Project Hypervisor. For an in-depth Xen Projoect Hypervisor tutorial, see Installing Xen Project Hypervisor on Debian 9: An in-depth beginner’s guide.
Software Versions
The software versions used in this guide include xen-tools version 4.7-1 and Xen Project Hypervisor version 4.8 as included in the current stable release of Debian 9 (Stretch).
If xen-tools is not yet installed on your Dom0 host, you may do so by running the following apt-get command as root:
# apt-get install xen-tools
The xen-delete-image Command
Under xen-tools, the xen-delete-image command is used to delete both DomU configuration files and their corresponding partitions. For further reference, the command’s manual page is included with the xen-tools package.
$ man xen-delete-image
As described in the manual page, the xen-delete-image command uses two options (–lvm and –hostname) to take care of its two main tasks.
The first option, –lvm, specifies the LVM volume containing the DomU partition(s) to be deleted. The second option, –hostname, specifies the hostname of the DomU configuration file to be deleted. Note that the “–hostname” option key may be left out, as shown in the example below, so long as a hostname value is included.[1]
It is important to point out that the xen-delete-image command will only delete the “.cfg” configuration file if it is located in the default “/etc/xen” directory. If your specified DomU file is not located in the /etc/xen directory, the file may need to be manually deleted.
Example
In this example a DomU with the hostname “httpserver” is permanently deleted from the system.
If you would like to follow along with the steps below, the tutorial Using xen-tools to Create DomU Virtual Machines in Xen Project Hypervisor provides instructions on creating the example httpserver DomU – that you can then delete!
Before you get started, first verify that the DomU configuration file is located in the standard directory /etc/xen. Second, make note of the LVM volume group that the DomU root and swap partitions are located in. If you’re not sure how to do this, check out the “Other Tips” section below.
For our example, the DomU configuration file is located in the /etc/xen directory and its associated LVM volume group is named “vg0”.
CAUTION!: Running the following command as root will permanently delete the DomU /etc/xen/httpserver.cfg configuration file, and all associated LVM volumes located in vg0 (e.g., httpserver-disk and httpserver-swap).
# xen-delete-image --lvm=vg0 httpserver
After running the above command, the following information is output to terminal:
Deleting: /etc/xen/httpserver.cfg Removing swap volume Removing LVM disk volume
This confirms that the httpserver DomU has been successfully deleted from the system.
Other Tips
Before the xen-delete-image command is executed, confirm that the specified DomU configuration file is located in the /etc/xen directory. Using the “ls” command to list and view the directory’s contents is sufficient for this task.
$ ls /etc/xen
Similarly, the associated DomU LVM volume group name should be verified by running the “lvs” command as root. In the resulting output, locate the DomU logical volume(s), “LV”, and the associated volume group name, “VG”.
# lvs
Note that checking the contents of the /etc/xen directory and the output of lvs can also verify that the specified DomU was successfully deleted.
Footnotes
[1] For example, the commands “xen-delete-image –lvm=vg0 –hostname=httpserver” and “xen-delete-image –lvm=vg0 httpserver” are identical in function.