Statistics
| Branch: | Revision:

root / qemu-img.texi @ c0424934

History | View | Annotate | Download (9.1 kB)

1
@example
2
@c man begin SYNOPSIS
3
usage: qemu-img command [command options]
4
@c man end
5
@end example
6

    
7
@c man begin OPTIONS
8

    
9
The following commands are supported:
10

    
11
@include qemu-img-cmds.texi
12

    
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.
20

    
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.
25

    
26
@item output_filename
27
is the destination disk image filename
28

    
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.
35

    
36

    
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
53

    
54
Parameters to snapshot subcommand:
55

    
56
@table @option
57

    
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
69

    
70
Command description:
71

    
72
@table @option
73
@item check [-f @var{fmt}] @var{filename}
74

    
75
Perform a consistency check on the disk image @var{filename}.
76

    
77
Only the formats @code{qcow2}, @code{qed} and @code{vdi} support
78
consistency checks.
79

    
80
@item create [-f @var{fmt}] [-o @var{options}] @var{filename} [@var{size}]
81

    
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.
85

    
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).
90

    
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.
93

    
94
@item commit [-f @var{fmt}] [-t @var{cache}] @var{filename}
95

    
96
Commit the changes recorded in @var{filename} in its base image.
97

    
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}
99

    
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).
103

    
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.
107

    
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.
111

    
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.
116

    
117
@item info [-f @var{fmt}] @var{filename}
118

    
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.
123

    
124
@item snapshot [-l | -a @var{snapshot} | -c @var{snapshot} | -d @var{snapshot} ] @var{filename}
125

    
126
List, apply, create or delete snapshots in image @var{filename}.
127

    
128
@item rebase [-f @var{fmt}] [-t @var{cache}] [-p] [-u] -b @var{backing_file} [-F @var{backing_fmt}] @var{filename}
129

    
130
Changes the backing file of an image. Only the formats @code{qcow2} and
131
@code{qed} support changing the backing file.
132

    
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}.
136

    
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.
143

    
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.
147

    
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.
150

    
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.
156

    
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
161

    
162
@item resize @var{filename} [+ | -]@var{size}
163

    
164
Change the disk image as if it had been created with @var{size}.
165

    
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!
169

    
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
174

    
175
Supported image file formats:
176

    
177
@table @option
178
@item raw
179

    
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.
186

    
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.
192

    
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.
201

    
202
Encryption uses the AES format which is very secure (128 bit keys). Use
203
a long password (16 characters) to get maximum protection.
204

    
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.
209

    
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.
214

    
215
@end table
216

    
217

    
218
@item qcow
219
Old QEMU image format. Left for compatibility.
220

    
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
228

    
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.
237

    
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
245

    
246
@item vpc
247
VirtualPC compatible image format (VHD).
248

    
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
253

    
254

    
255
@c man end
256

    
257
@ignore
258

    
259
@setfilename qemu-img
260
@settitle QEMU disk image utility
261

    
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
266

    
267
@c man begin AUTHOR
268
Fabrice Bellard
269
@c man end
270

    
271
@end ignore