|This article relies too much on references to primary sources. (December 2015) (Learn how and when to remove this template message)|
qcow is a file format for disk image files used by QEMU, a hosted virtual machine monitor. It stands for "QEMU Copy On Write" and uses a disk storage optimization strategy that delays allocation of storage until it is actually needed. Files in qcow format can contain a variety of disk images which are generally associated with specific guest operating systems. Two versions of the format exist: qcow, and qcow2, which use the .qcow and .qcow2 file extensions, respectively.
One of the main characteristics of qcow disk images is that files with this format can grow as data is added. This allows for smaller file sizes than raw disk images, which allocate the whole image space to a file, even if parts of it are empty. This is particularly useful for file systems that do not support holes, such as FAT32.
The qcow format also allows to store changes made to a read-only base image on a separate qcow file by using copy on write. This new qcow file contains the path to the base image to be able to refer back to it when required. When a particular piece of data has to be read from this new image, the content is retrieved from it if it is new and was stored there; if it is not, the data is fetched from the base image.
One disadvantage of qcow images is that they cannot be mounted directly as raw disk images would. A utility that is able to read qcow files is required before being able to mount one.
qcow2 is an updated version of the qcow format, intended to supersede it. The difference to the original version is that qcow2 supports multiple snapshots through a new, flexible model for storing snapshots.