Innovate | Connect | Transform
ContactService statusUSD $

GICT knowledge base

How to view a KVM full backup file – backup (.zst)

Published

KVMBackupszfs

Understanding Your Backup File

If you are restoring a full backup from my.interserver.net, you might notice the file format requires a specific setup to open. Here is why: our KVM systems use qcow2 back ends running over ZFS. To create these backups, we take a ZFS snapshot and store it remotely. This allows us to restore systems very quickly across our own KVM infrastructure.

However, because this is a single image file containing all the data, you cannot simply unzip it like a standard archive. To see and extract the data inside, you need:

  • A system that supports ZFS.
  • The ability to read a qcow2 file after the restore.

System Setup

We recommend using Ubuntu 24 LTS (or higher if a new version is available). The instructions below assume you already have ZFS installed and a file system set up (in this example, we are using a zpool named tank).

First, install the necessary tools from the repository:

apt install libguestfs-tools zfsutils-linux zstd
  • libguestfs-tools: Required to mount the image.
  • zstd: Required to decompress the backup file.

Restoring the Image

The full backup is a compressed image of the VPS from the file system. To use it, we will decompress the downloaded file and pipe it directly into a ZFS receive command.

Run the following command (replace the filename with your specific backup file):

zstdcat vps2410279-2025-02-18-30941.zst | zfs recv tank/restore

Breakdown of this command:

  • tank is the name of your ZFS pool.
  • restore is the name of the dataset that will be created.
  • For technical specifics on ZFS streams, you can reference the Oracle ZFS documentation.

Once this command finishes, you will have a KVM VPS qcow file located at: /tank/restore/os.qcow2.

Accessing Data (Mounting the Image)

Now that the image is restored to your file system, you can mount it to browse and copy files. We will use guestmount (from the libguestfs package) to mount the qcow2 file to a local folder, such as /mnt.

guestmount -a /tank/restore/os.qcow2 -m /dev/sda3 /mnt

Important Note on Partitions:
In the command above, we specified /dev/sda3. This is the most common partition for the OS data. However, depending on how the VPS was originally partitioned, your data might be on sda1 or sda2. If sda3 does not work, try the lower numbers.

Unmounting

When you are done recovering your files, simply unmount the directory:

guestunmount /mnt

For more details on these tools, you can view the Libguestfs documentation.

Related guides

Account services are unavailable until the production backend is configured.