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 sparse files, such as FAT32.
The qcow format also allows storing 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.
qcow2 is an updated version of the qcow format, intended to supersede it. The difference from the original version is that qcow2 supports multiple snapshots using a newer, more flexible model for storing them. The official documentation for the format is part of the QEMU Git tree.
- "QEMU Emulator User Documentation". Wiki.qemu.org. Retrieved 2011-12-12.
- "The QCOW Image Format". People.gnome.org. 2006-06-21. Retrieved 2013-04-23.
- "The QCOW2 Image Format (outdated)". People.gnome.org. 2008-09-11. Retrieved 2011-12-12.
- "QEMU Git tree - docs/interop/qcow2.txt". qemu.org. 2018-04-10. Retrieved 2018-05-29.