Commit 1f47a9223ebe3d0c9c779f72341afc10c206d574
1 parent
33e3963e
added disk image help
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@310 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
82 additions
and
9 deletions
qemu-doc.texi
... | ... | @@ -368,13 +368,13 @@ Use 'file' as initial ram disk. |
368 | 368 | |
369 | 369 | @item -hda file |
370 | 370 | @item -hdb file |
371 | -Use 'file' as hard disk 0 or 1 image. The disk images are simply raw | |
372 | -images of the hard disk. You can create them with the command: | |
373 | -@example | |
374 | -dd if=/dev/zero of=myimage bs=1024 count=mysize | |
375 | -@end example | |
376 | -where @var{myimage} is the image filename and @var{mysize} is its size | |
377 | -in kilobytes. | |
371 | +Use 'file' as hard disk 0 or 1 image (@xref{disk_images}). | |
372 | + | |
373 | +@item -snapshot | |
374 | + | |
375 | +Write to temporary files instead of disk image files. In this case, | |
376 | +the raw disk image you use is not written back. You can however force | |
377 | +the write back by pressing @key{C-a s} (@xref{disk_images}). | |
378 | 378 | |
379 | 379 | @item -m megs |
380 | 380 | Set virtual RAM size to @var{megs} megabytes. |
... | ... | @@ -402,12 +402,85 @@ During emulation, use @key{C-a h} to get terminal commands: |
402 | 402 | Print this help |
403 | 403 | @item C-a x |
404 | 404 | Exit emulatior |
405 | -@item C-a b | |
405 | +@item C-a s | |
406 | +Save disk data back to file (if -snapshot) | |
407 | +@item C-a b | |
406 | 408 | Send break (magic sysrq) |
407 | -@item C-a C-a | |
409 | +@item C-a C-a | |
408 | 410 | Send C-a |
409 | 411 | @end table |
410 | 412 | |
413 | +@node disk_images | |
414 | +@section Disk Images | |
415 | + | |
416 | +@subsection Raw disk images | |
417 | + | |
418 | +The disk images can simply be raw images of the hard disk. You can | |
419 | +create them with the command: | |
420 | +@example | |
421 | +dd if=/dev/zero of=myimage bs=1024 count=mysize | |
422 | +@end example | |
423 | +where @var{myimage} is the image filename and @var{mysize} is its size | |
424 | +in kilobytes. | |
425 | + | |
426 | +@subsection Snapshot mode | |
427 | + | |
428 | +If you use the option @option{-snapshot}, all disk images are | |
429 | +considered as read only. When sectors in written, they are written in | |
430 | +a temporary file created in @file{/tmp}. You can however force the | |
431 | +write back to the raw disk images by pressing @key{C-a s}. | |
432 | + | |
433 | +NOTE: The snapshot mode only works with raw disk images. | |
434 | + | |
435 | +@subsection Copy On Write disk images | |
436 | + | |
437 | +QEMU also supports user mode Linux | |
438 | +(@url{http://user-mode-linux.sourceforge.net/}) Copy On Write (COW) | |
439 | +disk images. The COW disk images are much smaller than normal images | |
440 | +as they store only modified sectors. They also permit the use of the | |
441 | +same disk image template for many users. | |
442 | + | |
443 | +To create a COW disk images, use the command: | |
444 | + | |
445 | +@example | |
446 | +vlmkcow -f myrawimage.bin mycowimage.cow | |
447 | +@end example | |
448 | + | |
449 | +@file{myrawimage.bin} is a raw image you want to use as original disk | |
450 | +image. It will never be written to. | |
451 | + | |
452 | +@file{mycowimage.cow} is the COW disk image which is created by | |
453 | +@code{vlmkcow}. You can use it directly with the @option{-hdx} | |
454 | +options. You must not modify the original raw disk image if you use | |
455 | +COW images, as COW images only store the modified sectors from the raw | |
456 | +disk image. QEMU stores the original raw disk image name and its | |
457 | +modified time in the COW disk image so that chances of mistakes are | |
458 | +reduced. | |
459 | + | |
460 | +If raw disk image is not read-only, by pressing @key{C-a s} you can | |
461 | +flush the COW disk image back into the raw disk image, as in snapshot | |
462 | +mode. | |
463 | + | |
464 | +COW disk images can also be created without a corresponding raw disk | |
465 | +image. It is useful to have a big initial virtual disk image without | |
466 | +using much disk space. Use: | |
467 | + | |
468 | +@example | |
469 | +vlmkcow mycowimage.cow 1024 | |
470 | +@end example | |
471 | + | |
472 | +to create a 1 gigabyte empty COW disk image. | |
473 | + | |
474 | +NOTES: | |
475 | +@enumerate | |
476 | +@item | |
477 | +COW disk images must be created on file systems supporting | |
478 | +@emph{holes} such as ext2 or ext3. | |
479 | +@item | |
480 | +Since holes are used, the displayed size of the COW disk image is not | |
481 | +the real one. To know it, use the @code{ls -ls} command. | |
482 | +@end enumerate | |
483 | + | |
411 | 484 | @section Kernel Compilation |
412 | 485 | |
413 | 486 | You can use any Linux kernel within QEMU provided it is mapped at | ... | ... |