File:  [Qemu by Fabrice Bellard] / qemu / qemu-img.texi
Revision (vendor branch): download - view: text, annotated - select for diffs
Tue Apr 24 19:17:56 2018 UTC (3 years, 1 month ago) by root
Branches: qemu, MAIN
CVS tags: qemu1001, HEAD
qemu 1.0.1

    1: @example
    2: @c man begin SYNOPSIS
    3: usage: qemu-img command [command options]
    4: @c man end
    5: @end example
    7: @c man begin OPTIONS
    9: The following commands are supported:
   11: @include qemu-img-cmds.texi
   13: Command parameters:
   14: @table @var
   15: @item filename
   16:  is a disk image filename
   17: @item fmt
   18: is the disk image format. It is guessed automatically in most cases. See below
   19: for a description of the supported disk formats.
   21: @item size
   22: is the disk image size in bytes. Optional suffixes @code{k} or @code{K}
   23: (kilobyte, 1024) @code{M} (megabyte, 1024k) and @code{G} (gigabyte, 1024M)
   24: and T (terabyte, 1024G) are supported.  @code{b} is ignored.
   26: @item output_filename
   27: is the destination disk image filename
   29: @item output_fmt
   30:  is the destination format
   31: @item options
   32: is a comma separated list of format specific options in a
   33: name=value format. Use @code{-o ?} for an overview of the options supported
   34: by the used format or see the format descriptions below for details.
   37: @item -c
   38: indicates that target image must be compressed (qcow format only)
   39: @item -h
   40: with or without a command shows help and lists the supported formats
   41: @item -p
   42: display progress bar (convert and rebase commands only)
   43: @item -S @var{size}
   44: indicates the consecutive number of bytes that must contain only zeros
   45: for qemu-img to create a sparse image during conversion. This value is rounded
   46: down to the nearest 512 bytes. You may use the common size suffixes like
   47: @code{k} for kilobytes.
   48: @item -t @var{cache}
   49: specifies the cache mode that should be used with the (destination) file. See
   50: the documentation of the emulator's @code{-drive cache=...} option for allowed
   51: values.
   52: @end table
   54: Parameters to snapshot subcommand:
   56: @table @option
   58: @item snapshot
   59: is the name of the snapshot to create, apply or delete
   60: @item -a
   61: applies a snapshot (revert disk to saved state)
   62: @item -c
   63: creates a snapshot
   64: @item -d
   65: deletes a snapshot
   66: @item -l
   67: lists all snapshots in the given image
   68: @end table
   70: Command description:
   72: @table @option
   73: @item check [-f @var{fmt}] @var{filename}
   75: Perform a consistency check on the disk image @var{filename}.
   77: Only the formats @code{qcow2}, @code{qed} and @code{vdi} support
   78: consistency checks.
   80: @item create [-f @var{fmt}] [-o @var{options}] @var{filename} [@var{size}]
   82: Create the new disk image @var{filename} of size @var{size} and format
   83: @var{fmt}. Depending on the file format, you can add one or more @var{options}
   84: that enable additional features of this format.
   86: If the option @var{backing_file} is specified, then the image will record
   87: only the differences from @var{backing_file}. No size needs to be specified in
   88: this case. @var{backing_file} will never be modified unless you use the
   89: @code{commit} monitor command (or qemu-img commit).
   91: The size can also be specified using the @var{size} option with @code{-o},
   92: it doesn't need to be specified separately in this case.
   94: @item commit [-f @var{fmt}] [-t @var{cache}] @var{filename}
   96: Commit the changes recorded in @var{filename} in its base image.
   98: @item convert [-c] [-p] [-f @var{fmt}] [-t @var{cache}] [-O @var{output_fmt}] [-o @var{options}] [-s @var{snapshot_name}] [-S @var{sparse_size}] @var{filename} [@var{filename2} [...]] @var{output_filename}
  100: Convert the disk image @var{filename} or a snapshot @var{snapshot_name} to disk image @var{output_filename}
  101: using format @var{output_fmt}. It can be optionally compressed (@code{-c}
  102: option) or use any format specific options like encryption (@code{-o} option).
  104: Only the formats @code{qcow} and @code{qcow2} support compression. The
  105: compression is read-only. It means that if a compressed sector is
  106: rewritten, then it is rewritten as uncompressed data.
  108: Image conversion is also useful to get smaller image when using a
  109: growable format such as @code{qcow} or @code{cow}: the empty sectors
  110: are detected and suppressed from the destination image.
  112: You can use the @var{backing_file} option to force the output image to be
  113: created as a copy on write image of the specified base image; the
  114: @var{backing_file} should have the same content as the input's base image,
  115: however the path, image format, etc may differ.
  117: @item info [-f @var{fmt}] @var{filename}
  119: Give information about the disk image @var{filename}. Use it in
  120: particular to know the size reserved on disk which can be different
  121: from the displayed size. If VM snapshots are stored in the disk image,
  122: they are displayed too.
  124: @item snapshot [-l | -a @var{snapshot} | -c @var{snapshot} | -d @var{snapshot} ] @var{filename}
  126: List, apply, create or delete snapshots in image @var{filename}.
  128: @item rebase [-f @var{fmt}] [-t @var{cache}] [-p] [-u] -b @var{backing_file} [-F @var{backing_fmt}] @var{filename}
  130: Changes the backing file of an image. Only the formats @code{qcow2} and
  131: @code{qed} support changing the backing file.
  133: The backing file is changed to @var{backing_file} and (if the image format of
  134: @var{filename} supports this) the backing file format is changed to
  135: @var{backing_fmt}.
  137: There are two different modes in which @code{rebase} can operate:
  138: @table @option
  139: @item Safe mode
  140: This is the default mode and performs a real rebase operation. The new backing
  141: file may differ from the old one and qemu-img rebase will take care of keeping
  142: the guest-visible content of @var{filename} unchanged.
  144: In order to achieve this, any clusters that differ between @var{backing_file}
  145: and the old backing file of @var{filename} are merged into @var{filename}
  146: before actually changing the backing file.
  148: Note that the safe mode is an expensive operation, comparable to converting
  149: an image. It only works if the old backing file still exists.
  151: @item Unsafe mode
  152: qemu-img uses the unsafe mode if @code{-u} is specified. In this mode, only the
  153: backing file name and format of @var{filename} is changed without any checks
  154: on the file contents. The user must take care of specifying the correct new
  155: backing file, or the guest-visible content of the image will be corrupted.
  157: This mode is useful for renaming or moving the backing file to somewhere else.
  158: It can be used without an accessible old backing file, i.e. you can use it to
  159: fix an image whose backing file has already been moved/renamed.
  160: @end table
  162: @item resize @var{filename} [+ | -]@var{size}
  164: Change the disk image as if it had been created with @var{size}.
  166: Before using this command to shrink a disk image, you MUST use file system and
  167: partitioning tools inside the VM to reduce allocated file systems and partition
  168: sizes accordingly.  Failure to do so will result in data loss!
  170: After using this command to grow a disk image, you must use file system and
  171: partitioning tools inside the VM to actually begin using the new space on the
  172: device.
  173: @end table
  175: Supported image file formats:
  177: @table @option
  178: @item raw
  180: Raw disk image format (default). This format has the advantage of
  181: being simple and easily exportable to all other emulators. If your
  182: file system supports @emph{holes} (for example in ext2 or ext3 on
  183: Linux or NTFS on Windows), then only the written sectors will reserve
  184: space. Use @code{qemu-img info} to know the real size used by the
  185: image or @code{ls -ls} on Unix/Linux.
  187: @item qcow2
  188: QEMU image format, the most versatile format. Use it to have smaller
  189: images (useful if your filesystem does not supports holes, for example
  190: on Windows), optional AES encryption, zlib based compression and
  191: support of multiple VM snapshots.
  193: Supported options:
  194: @table @code
  195: @item backing_file
  196: File name of a base image (see @option{create} subcommand)
  197: @item backing_fmt
  198: Image format of the base image
  199: @item encryption
  200: If this option is set to @code{on}, the image is encrypted.
  202: Encryption uses the AES format which is very secure (128 bit keys). Use
  203: a long password (16 characters) to get maximum protection.
  205: @item cluster_size
  206: Changes the qcow2 cluster size (must be between 512 and 2M). Smaller cluster
  207: sizes can improve the image file size whereas larger cluster sizes generally
  208: provide better performance.
  210: @item preallocation
  211: Preallocation mode (allowed values: off, metadata). An image with preallocated
  212: metadata is initially larger but can improve performance when the image needs
  213: to grow.
  215: @end table
  218: @item qcow
  219: Old QEMU image format. Left for compatibility.
  221: Supported options:
  222: @table @code
  223: @item backing_file
  224: File name of a base image (see @option{create} subcommand)
  225: @item encryption
  226: If this option is set to @code{on}, the image is encrypted.
  227: @end table
  229: @item cow
  230: User Mode Linux Copy On Write image format. Used to be the only growable
  231: image format in QEMU. It is supported only for compatibility with
  232: previous versions. It does not work on win32.
  233: @item vdi
  234: VirtualBox 1.1 compatible image format.
  235: @item vmdk
  236: VMware 3 and 4 compatible image format.
  238: Supported options:
  239: @table @code
  240: @item backing_fmt
  241: Image format of the base image
  242: @item compat6
  243: Create a VMDK version 6 image (instead of version 4)
  244: @end table
  246: @item vpc
  247: VirtualPC compatible image format (VHD).
  249: @item cloop
  250: Linux Compressed Loop image, useful only to reuse directly compressed
  251: CD-ROM images present for example in the Knoppix CD-ROMs.
  252: @end table
  255: @c man end
  257: @ignore
  259: @setfilename qemu-img
  260: @settitle QEMU disk image utility
  262: @c man begin SEEALSO
  263: The HTML documentation of QEMU for more precise information and Linux
  264: user mode emulator invocation.
  265: @c man end
  267: @c man begin AUTHOR
  268: Fabrice Bellard
  269: @c man end
  271: @end ignore