Storage and Disks
Every VM has at least one virtual disk, a file on the host that the guest sees as a hard drive. This chapter explains the supported formats, how disks attach to the guest, and how to create, resize, and convert them.
Disk Formats #
QuantaBox supports several disk image formats:
| Format | Extension | Notes |
|---|---|---|
| QCOW2 | .qcow2 | QEMU Copy-On-Write. Sparse (grows on demand), supports snapshots and compression. Default for new disks. |
| QVD | .qvd | QuantaBox Virtual Disk, an encrypted QCOW2 variant used when PQC encryption is enabled. |
| Raw | .img, .raw | A flat, uncompressed image. Maximum performance, no snapshot support inside the image. |
| VMDK | .vmdk | VMware-compatible format, for interoperability. |
| VDI | .vdi | VirtualBox Virtual Disk Image, for interoperability. |
Which should you use? QCOW2 (or QVD when encrypting) is the best default: it is sparse and supports snapshots. Use Raw only when you need raw throughput and do not need snapshots. Use VMDK/VDI when moving disks to or from other hypervisors.
Disk Buses (Controllers) #
The bus determines which virtual controller the guest uses to reach the disk:
| Bus | Best for |
|---|---|
| VirtIO | Recommended. Paravirtualized, fastest. Modern Linux supports it natively; Windows needs the virtio driver during install. |
| SATA | Broad compatibility, including OS installers that lack virtio drivers. |
| NVMe | Emulated NVMe, useful for testing NVMe-specific guest behavior. |
| IDE | Legacy. Use only for very old guests that support nothing else. |
Set the bus per disk in Settings → Storage.
How Disks Are Stored #
Each VM lives in its own folder inside the data directory, holding its disk image(s) and configuration:
<data-dir>/vms/<vm-id>/
├── config.json # VM configuration
├── <vm-id>.qcow2 # primary disk (or .qvd when encrypted)
└── ... # additional disks, snapshots metadata
Because QCOW2/QVD disks are sparse, a 50 GB virtual disk only consumes as much host space as the guest has actually written.
Creating and Adding Disks #
A VM's first disk is created with the VM. To add another disk, open Settings → Storage and add a disk, choosing its size, format, and bus.
Behind the scenes, QuantaBox creates disks with qemu-img. For an encrypted disk it enables LUKS encryption and QCOW2 tuning (cluster_size=65536, lazy_refcounts=on). See Disk Formats (Technical).
Resizing a Disk #
You can grow a virtual disk when the guest needs more space:
- Stop the VM.
- In Settings → Storage, increase the disk's size.
QuantaBox resizes the image file with qemu-img resize. This only enlarges the container. You must then extend the partition and filesystem inside the guest (for example, with growpart + resize2fs on Linux, or Disk Management on Windows).
Converting Between Formats #
To migrate a disk to another format (for example QCOW2 to VMDK to use it elsewhere), QuantaBox uses qemu-img convert. Conversion produces a new image and leaves the original intact. This is also how a non-sparse Raw image can be compacted into a sparse QCOW2.
Inspecting a Disk #
A VM's Details tab and quantabox info <vm> show each disk's path, virtual size, and format. Internally QuantaBox reads this with qemu-img info, which also reports the actual on-disk size, cluster size, encryption flag, and any backing file.
Encrypted Disks #
When PQC Disk Encryption is enabled, the disk is stored as an encrypted QVD/QCOW2 image and its contents are protected with AES-256-GCM. The disk's key is itself wrapped with ML-KEM-768 and held in QuantaBox's key vault. You cannot add encryption to an existing unencrypted disk in place. Create the disk encrypted, or convert by exporting and re-importing. See Post-Quantum Encryption.
Next #
Continue to Networking to connect your VM to the network and set up SSH access.