Editing Man/ploop.8

Jump to: navigation, search

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 20: Line 20:
 
[<b>-t&nbsp;</b><i>fstype</i>]
 
[<b>-t&nbsp;</b><i>fstype</i>]
 
[<b>-b&nbsp;</b><i>blocksize</i>]
 
[<b>-b&nbsp;</b><i>blocksize</i>]
[<b>-B&nbsp;</b><i>fsblocksize</i>] [<b>--nolazy</b>]
+
[<b>-B&nbsp;</b><i>fsblocksize</i>] <i>delta_file</i></p></td></tr>
<i>delta_file</i></p> </td></tr>
 
 
<tr valign="top" align="left">
 
<tr valign="top" align="left">
 
<td width="11%"></td>
 
<td width="11%"></td>
Line 64: Line 63:
 
<b>-m</b> <i>mount_point</i> | <i>DiskDescriptor.xml</i> |
 
<b>-m</b> <i>mount_point</i> | <i>DiskDescriptor.xml</i> |
 
<i>image_file</i> }</p></td></tr>
 
<i>image_file</i> }</p></td></tr>
<tr valign="top" align="left">
 
<td width="11%"></td>
 
<td width="20%">
 
 
<p style="margin-top: 1em"><b>ploop&nbsp;replace</b></p></td>
 
<td width="69%">
 
 
<p style="margin-top: 1em">{ <b>-u</b> <i>uuid</i> |
 
<b>-l</b> <i>level</i> | <b>-o</b> <i>cur_image_file</i> }
 
[<b>--keep-name</b>] <b>-i</b> <i>image_file
 
DiskDescriptor.xml</i></p> </td></tr>
 
 
<tr valign="top" align="left">
 
<tr valign="top" align="left">
 
<td width="11%"></td>
 
<td width="11%"></td>
Line 102: Line 90:
 
</table>
 
</table>
  
<p style="margin-left:11%;">[<b>-u&nbsp;</b><i>uuid</i>]
+
<p style="margin-left:11%;">[<b>--force</b>]
<i>DiskDescriptor.xml</i></p>
+
[<b>--hard-force</b>] [<b>--check</b>] [<b>--ro</b>]
 +
[<b>--silent</b>] [<b>--drop-inuse</b>] [<b>--raw</b>]
 +
[<b>--blocksize&nbsp;</b><i>size</i>]
 +
[<b>--repair-sparse</b>] <i>DiskDescriptor.xml</i> |
 +
<i>image_file</i></p>
  
 
<table width="100%" border="0" rules="none" frame="void"
 
<table width="100%" border="0" rules="none" frame="void"
Line 109: Line 101:
 
<tr valign="top" align="left">
 
<tr valign="top" align="left">
 
<td width="11%"></td>
 
<td width="11%"></td>
<td width="17%">
+
<td width="15%">
 
 
<p style="margin-top: 1em"><b>ploop&nbsp;check</b></p></td>
 
<td width="72%">
 
 
 
<p style="margin-top: 1em">[<b>--force</b>]
 
[<b>--hard-force</b>] [<b>--check</b>] [<b>--ro</b>]
 
[<b>--silent</b>] [<b>--drop-inuse</b>] [<b>--raw</b>]
 
[<b>--blocksize&nbsp;</b><i>size</i>]
 
[<b>--repair-sparse</b>] <i>image_file</i></p></td></tr>
 
<tr valign="top" align="left">
 
<td width="11%"></td>
 
<td width="17%">
 
  
 
<p style="margin-top: 1em"><b>ploop&nbsp;info</b></p></td>
 
<p style="margin-top: 1em"><b>ploop&nbsp;info</b></p></td>
<td width="72%">
+
<td width="2%"></td>
 +
<td width="35%">
  
<p style="margin-top: 1em">[<b>-s</b>] [<b>-d</b>]
+
<p style="margin-top: 1em">[<b>-s</b>]
<i>DiskDescriptor.xml</i></p> </td></tr>
+
<i>DiskDescriptor.xml</i></p> </td>
 +
<td width="37%">
 +
</td></tr>
 
<tr valign="top" align="left">
 
<tr valign="top" align="left">
 
<td width="11%"></td>
 
<td width="11%"></td>
<td width="17%">
+
<td width="15%">
  
 
<p style="margin-top: 1em"><b>ploop&nbsp;list</b></p></td>
 
<p style="margin-top: 1em"><b>ploop&nbsp;list</b></p></td>
<td width="72%">
+
<td width="2%"></td>
 +
<td width="35%">
  
<p style="margin-top: 1em">[<b>-a</b>]</p></td></tr>
+
<p style="margin-top: 1em">[<b>-a</b>]</p></td>
 +
<td width="37%">
 +
</td></tr>
 
</table>
 
</table>
  
Line 158: Line 144:
  
 
<p style="margin-top: 1em"><b>ploop&nbsp;snapshot-merge</b></p> </td>
 
<p style="margin-top: 1em"><b>ploop&nbsp;snapshot-merge</b></p> </td>
<td width="57%">
+
<td width="51%">
  
<p style="margin-top: 1em">[<b>-u&nbsp;</b><i>uuid&nbsp;</i>[<b>-U&nbsp;</b><i>uuid2</i>]&nbsp;|&nbsp;<b>-A</b>]
+
<p style="margin-top: 1em">[<b>-u&nbsp;</b><i>uuid&nbsp;</i>|&nbsp;<b>-A</b>]
[<b>-n&nbsp;</b><i>new_delta</i>]
+
<i>DiskDescriptor.xml</i></p> </td>
<i>DiskDescriptor.xml</i></p> </td></tr>
+
<td width="6%">
 +
</td></tr>
 
<tr valign="top" align="left">
 
<tr valign="top" align="left">
 
<td width="11%"></td>
 
<td width="11%"></td>
Line 168: Line 155:
  
 
<p style="margin-top: 1em"><b>ploop&nbsp;snapshot-switch</b></p> </td>
 
<p style="margin-top: 1em"><b>ploop&nbsp;snapshot-switch</b></p> </td>
<td width="57%">
+
<td width="51%">
  
 
<p style="margin-top: 1em"><b>-u</b> <i>uuid
 
<p style="margin-top: 1em"><b>-u</b> <i>uuid
DiskDescriptor.xml</i></p> </td></tr>
+
DiskDescriptor.xml</i></p> </td>
 +
<td width="6%">
 +
</td></tr>
 
<tr valign="top" align="left">
 
<tr valign="top" align="left">
 
<td width="11%"></td>
 
<td width="11%"></td>
Line 177: Line 166:
  
 
<p style="margin-top: 1em"><b>ploop&nbsp;snapshot-delete</b></p> </td>
 
<p style="margin-top: 1em"><b>ploop&nbsp;snapshot-delete</b></p> </td>
<td width="57%">
+
<td width="51%">
  
 
<p style="margin-top: 1em"><b>-u</b> <i>uuid
 
<p style="margin-top: 1em"><b>-u</b> <i>uuid
DiskDescriptor.xml</i></p> </td></tr>
+
DiskDescriptor.xml</i></p> </td>
 +
<td width="6%">
 +
</td></tr>
 
<tr valign="top" align="left">
 
<tr valign="top" align="left">
 
<td width="11%"></td>
 
<td width="11%"></td>
Line 186: Line 177:
  
 
<p style="margin-top: 1em"><b>ploop&nbsp;snapshot-list</b></p> </td>
 
<p style="margin-top: 1em"><b>ploop&nbsp;snapshot-list</b></p> </td>
<td width="57%">
+
<td width="51%"></td>
 +
<td width="6%">
 
</td></tr>
 
</td></tr>
 
</table>
 
</table>
  
 
<p style="margin-left:11%;">[<b>-H</b>]
 
<p style="margin-left:11%;">[<b>-H</b>]
[<b>-u&nbsp;</b><i>uuid</i>] [<b>-s</b>]
+
[<b>-u&nbsp;</b><i>uuid</i>]
 
[<b>-o&nbsp;</b><i>field</i>[,<i>field</i>...]]
 
[<b>-o&nbsp;</b><i>field</i>[,<i>field</i>...]]
 
<i>DiskDescriptor.xml</i></p>
 
<i>DiskDescriptor.xml</i></p>
Line 203: Line 195:
 
<p style="margin-top: 1em"><b>ploop&nbsp;copy</b></p></td>
 
<p style="margin-top: 1em"><b>ploop&nbsp;copy</b></p></td>
 
<td width="2%"></td>
 
<td width="2%"></td>
<td width="72%">
+
<td width="57%">
  
 
<p style="margin-top: 1em"><b>-s</b> <i>device</i>
 
<p style="margin-top: 1em"><b>-s</b> <i>device</i>
[<b>-F&nbsp;</b><i>stop_command</i>] {
+
[<b>-F&nbsp;</b><i>stop_command</i>]
[<b>-d&nbsp;</b><i>file</i>] |
+
[<b>-d&nbsp;</b><i>file</i>]</p> </td>
[<b>-o&nbsp;</b><i>output_fd</i>]
+
<td width="15%">
[<b>-f&nbsp;</b><i>feedback_fd</i>] }</p></td></tr>
+
</td></tr>
 
<tr valign="top" align="left">
 
<tr valign="top" align="left">
 
<td width="11%"></td>
 
<td width="11%"></td>
Line 216: Line 208:
 
<p style="margin-top: 1em"><b>ploop&nbsp;copy</b></p></td>
 
<p style="margin-top: 1em"><b>ploop&nbsp;copy</b></p></td>
 
<td width="2%"></td>
 
<td width="2%"></td>
<td width="72%">
+
<td width="57%">
  
<p style="margin-top: 1em"><b>-d</b> <i>file</i>
+
<p style="margin-top: 1em"><b>-d</b> <i>file</i></p></td>
[<b>-i&nbsp;</b><i>input_fd</i>]
+
<td width="15%">
[<b>-f&nbsp;</b><i>feedback_fd</i>]</p> </td></tr>
+
</td></tr>
 
</table>
 
</table>
  
Line 228: Line 220:
  
 
<p style="margin-top: 1em"><b>ploop&nbsp;balloon&nbsp;discard</b></p> <td width="45%"></td>
 
<p style="margin-top: 1em"><b>ploop&nbsp;balloon&nbsp;discard</b></p> <td width="45%"></td>
<td width="50%">
+
<td width="55%">
  
 
<p style="margin-top: 1em">[<b>--automount</b>]
 
<p style="margin-top: 1em">[<b>--automount</b>]
 
[<b>--to-free&nbsp;</b><i>size</i>]
 
[<b>--to-free&nbsp;</b><i>size</i>]
[<b>--min-block&nbsp;</b><i>min_size</i>] [<b>--defrag</b>]
+
[<b>--min-block&nbsp;</b><i>min_size</i>]
<i>DiskDescriptor.xml</i></p> </td>
+
<i>DiskDescriptor.xml</i></p> </td></tr>
<td width="5%">
 
</td></tr>
 
</table>
 
 
 
<table width="100%" border="0" rules="none" frame="void"
 
      cellspacing="0" cellpadding="0">
 
<tr valign="top" align="left">
 
 
 
<p style="margin-top: 1em"><b>ploop&nbsp;restore-descriptor</b></p> <td width="49%"></td>
 
<td width="51%">
 
 
 
<p style="margin-top: 1em"><b>-f</b> <i>format</i>
 
[<b>-b&nbsp;</b><i>blocksize</i>] <i>disk_dir
 
delta_file</i></p> </td></tr>
 
 
</table>
 
</table>
  
Line 305: Line 283:
 
[<b>-t&nbsp;</b><i>fstype</i>]
 
[<b>-t&nbsp;</b><i>fstype</i>]
 
[<b>-b&nbsp;</b><i>blocksize</i>]
 
[<b>-b&nbsp;</b><i>blocksize</i>]
[<b>-B&nbsp;</b><i>fsblocksize</i>] [<b>--nolazy</b>]
+
[<b>-B&nbsp;</b><i>fsblocksize</i>] <i>delta_file</i></p></td></tr>
<i>delta_file</i></p> </td></tr>
 
 
<tr valign="top" align="left">
 
<tr valign="top" align="left">
 
<td width="11%"></td>
 
<td width="11%"></td>
Line 360: Line 337:
 
<p style="margin-left:28%;">Filesystem block size, in
 
<p style="margin-left:28%;">Filesystem block size, in
 
bytes. Default is 4096 bytes.</p>
 
bytes. Default is 4096 bytes.</p>
 
<p style="margin-left:11%;"><b>-n</b>, <b>--nolazy</b></p>
 
 
<p style="margin-left:28%;">Disable lazy mkfs
 
initialization (which is enabled by default). Currently that
 
means if this flag is set, <b>mkfs.ext4</b>(8) is called
 
with <b>-Elazy_itable_init=0,lazy_journal_init=0</b>
 
options.</p>
 
  
 
<table width="100%" border="0" rules="none" frame="void"
 
<table width="100%" border="0" rules="none" frame="void"
Line 585: Line 554:
 
</td></tr>
 
</td></tr>
 
</table>
 
</table>
 
==== replace ====
 
 
<p style="margin-top: 1em">Replaces a ploop image by a
 
different (but identical) one, on a running ploop device.
 
Only a read-only image (e.g. a non-top one in a stacked
 
configuration) can be replaced. An image to be replaced is
 
specified by either one of level, UUID, or the current image
 
file.</p>
 
 
<p style="margin-top: 1em">If a new image is not identical
 
to the old one (i.e. its content differs) or not suitable
 
for ploop in any other way (e.g. it is sparse, or resides on
 
a file system not supported by ploop), the result is
 
undefined.</p>
 
 
<table width="100%" border="0" rules="none" frame="void"
 
      cellspacing="0" cellpadding="0">
 
<tr valign="top" align="left">
 
<td width="11%"></td>
 
<td width="20%">
 
 
<p style="margin-top: 1em"><b>ploop&nbsp;replace</b></p></td>
 
<td width="1%"></td>
 
<td width="68%">
 
 
<p style="margin-top: 1em">{ <b>-u</b> <i>uuid</i> |
 
<b>-l</b> <i>level</i> | <b>-o</b> <i>cur_image_file</i> }
 
[<b>--keep-name</b>] <b>-i</b> <i>image_file
 
DiskDescriptor.xml</i></p> </td></tr>
 
<tr valign="top" align="left">
 
<td width="11%"></td>
 
<td width="20%">
 
 
<p><b>-u</b> <i>uuid</i></p></td>
 
<td width="1%"></td>
 
<td width="68%">
 
 
<p>A <i>uuid</i> of an image to be replaced.</p></td></tr>
 
<tr valign="top" align="left">
 
<td width="11%"></td>
 
<td width="20%">
 
 
<p><b>-l</b> <i>level</i></p></td>
 
<td width="1%"></td>
 
<td width="68%">
 
 
<p>A level of image to be replaced. A level is a distance
 
of an image from the base delta.</p></td></tr>
 
</table>
 
 
<p style="margin-left:11%;"><b>-o</b>
 
<i>cur_image_file</i></p>
 
 
<p style="margin-left:32%;">A current image file (the one
 
to replace).</p>
 
 
<p style="margin-left:11%;"><b>-k</b>,
 
<b>--keep-name</b></p>
 
 
<p style="margin-left:32%;">A flag to keep the same image
 
file name. If this flag is set, after the image is replaced,
 
a new <i>image_file</i> is renamed to the old one (removing
 
the old, now unused, image), so no modification to
 
DiskDescriptor.xml is required.</p>
 
 
<table width="100%" border="0" rules="none" frame="void"
 
      cellspacing="0" cellpadding="0">
 
<tr valign="top" align="left">
 
<td width="11%"></td>
 
<td width="20%">
 
 
<p><b>-i</b> <i>image_file</i></p></td>
 
<td width="1%"></td>
 
<td width="37%">
 
 
<p>A new replacement image.</p></td>
 
<td width="31%">
 
</td></tr>
 
</table>
 
 
<p style="margin-left:11%;"><i>DiskDescriptor.xml</i></p>
 
 
<p style="margin-left:32%;">Path to the DiskDescriptor.xml
 
file with information about images.</p>
 
  
 
==== resize ====
 
==== resize ====
Line 752: Line 636:
 
<p style="margin-top: 1em">Check the internal consistency
 
<p style="margin-top: 1em">Check the internal consistency
 
of (and possibly repair) a ploop image (or images). Note
 
of (and possibly repair) a ploop image (or images). Note
that image(s) to be tested should not be in use.</p>
+
that image(s) to be tested should not be in use. If
 
+
<i>DiskDescriptor.xml</i> is supplied, all the images one by
<table width="100%" border="0" rules="none" frame="void"
+
one are checked.</p>
      cellspacing="0" cellpadding="0">
 
<tr valign="top" align="left">
 
<td width="11%"></td>
 
<td width="17%">
 
 
 
<p style="margin-top: 1em"><b>ploop&nbsp;check</b></p></td>
 
<td width="1%"></td>
 
<td width="43%">
 
 
 
<p style="margin-top: 1em">[<b>-u&nbsp;</b><i>uuid</i>]
 
<i>DiskDescriptor.xml</i></p> </td>
 
<td width="28%">
 
</td></tr>
 
</table>
 
 
 
<p style="margin-top: 1em">Check all the images in
 
<i>DiskDescriptor.xml</i> up to the one denoted by the
 
<i>uuid</i> (or default top delta, if UUID is not
 
specified). Default built-in check options are used, and the
 
ones specified on the command line, if any, are ignored.</p>
 
  
 
<table width="100%" border="0" rules="none" frame="void"
 
<table width="100%" border="0" rules="none" frame="void"
Line 891: Line 755:
 
</table>
 
</table>
  
<p>When run without any options, show information about
+
<p>Show information about disk space and inodes usage and
disk space and inodes usage and limits on the inner ploop
+
limits on the inner ploop filesystem, somewhat similar to
filesystem, somewhat similar to [[Man/vzquota.8|<b>vzquota</b>(8)]]
+
[[Man/vzquota.8|<b>vzquota</b>(8)]] <b>stat</b> or <b>show</b> commands.</p>
<b>stat</b> or <b>show</b> commands.</p>
 
  
 
<table width="100%" border="0" rules="none" frame="void"
 
<table width="100%" border="0" rules="none" frame="void"
Line 904: Line 767:
 
<p style="margin-top: 1em"><b>ploop&nbsp;info</b></p></td>
 
<p style="margin-top: 1em"><b>ploop&nbsp;info</b></p></td>
 
<td width="2%"></td>
 
<td width="2%"></td>
<td width="43%">
+
<td width="32%">
  
<p style="margin-top: 1em">[<b>-s</b>] [<b>-d</b>]
+
<p style="margin-top: 1em"><b>-s</b>
 
<i>DiskDescriptor.xml</i></p> </td>
 
<i>DiskDescriptor.xml</i></p> </td>
<td width="29%">
+
<td width="40%">
 
</td></tr>
 
</td></tr>
 
</table>
 
</table>
  
<p>Either one or both options can be used together. Option
+
<p>Show information about ploop device size, block size,
<b>-s</b> is used to show information about ploop device
+
and format version.</p>
size, block size, and format version. Option <b>-d</b> is
 
used to show a corresponding ploop block device, it
 
available. file.</p>
 
  
 
==== list ====
 
==== list ====
Line 939: Line 799:
 
With option <b>-a</b> it also shows a mount point (third
 
With option <b>-a</b> it also shows a mount point (third
 
column).</p>
 
column).</p>
 
==== restore-descriptor ====
 
 
<p style="margin-top: 1em">Create DiskDescriptor.xml file
 
suitable for <i>delta_file</i> and put it into
 
<i>disk_dir</i>.</p>
 
 
<table width="100%" border="0" rules="none" frame="void"
 
      cellspacing="0" cellpadding="0">
 
<tr valign="top" align="left">
 
<td width="11%"></td>
 
<td width="37%">
 
 
<p style="margin-top: 1em"><b>ploop&nbsp;restore-descriptor</b></p> </td>
 
<td width="1%"></td>
 
<td width="51%">
 
 
<p style="margin-top: 1em"><b>-f</b> <i>format</i>
 
[<b>-b&nbsp;</b><i>blocksize</i>] <i>disk_dir
 
delta_file</i></p> </td></tr>
 
</table>
 
 
<p style="margin-top: 1em">Read image header in case of
 
ploop1 format or check raw image size and generate proper
 
DiskDescriptor.xml file. You can specify blocksize for raw
 
images. If it&rsquo;s not specified it will be choosen
 
automatically - largest possible value between 32K and 1M.
 
Raw image size must be aligned to blocksize.</p>
 
 
<p style="margin-top: 1em">This command works only for base
 
images. Snapshots are not supported.</p>
 
  
 
=== Working with snapshots ===
 
=== Working with snapshots ===
Line 984: Line 813:
 
<p style="margin-top: 1em">Snapshots are identified by a
 
<p style="margin-top: 1em">Snapshots are identified by a
 
unique UUID. A snapshot can be mounted using <b>ploop mount
 
unique UUID. A snapshot can be mounted using <b>ploop mount
-u</b> <i>uuid</i> command, see above.</p>
+
-u</b> <i>UUID</i> command, see above.</p>
  
 
==== snapshot ====
 
==== snapshot ====
Line 1,019: Line 848:
  
 
<p style="margin-top: 1em">Merge a snapshot with its
 
<p style="margin-top: 1em">Merge a snapshot with its
parent. That is, contents of the delta file corresponding to
+
parent.</p>
the snapshot is merged to a parent delta, then the file is
 
removed. Parent snapshot UUID is lost (as it is replaced
 
with the <i>uuid</i> specified). All snapshots having the
 
lost one as a parent are updated to have the <i>uuid</i> as
 
its parent.</p>
 
  
 
<table width="100%" border="0" rules="none" frame="void"
 
<table width="100%" border="0" rules="none" frame="void"
Line 1,036: Line 860:
 
<td width="57%">
 
<td width="57%">
  
<p style="margin-top: 1em">[<b>-u&nbsp;</b><i>uuid&nbsp;</i>[<b>-U&nbsp;</b><i>uuid2</i>]&nbsp;|&nbsp;<b>-A</b>]
+
<p style="margin-top: 1em">[<b>-u&nbsp;</b><i>uuid&nbsp;</i>|&nbsp;<b>-A</b>]
[<b>-n&nbsp;</b><i>new_delta</i>]
 
 
<i>DiskDescriptor.xml</i></p> </td></tr>
 
<i>DiskDescriptor.xml</i></p> </td></tr>
 
<tr valign="top" align="left">
 
<tr valign="top" align="left">
Line 1,047: Line 870:
 
<td width="57%">
 
<td width="57%">
  
<p>Specify a single snapshot <i>uuid</i> to merge. If this
+
<p>Specify a snapshot <i>uuid</i> to merge. If this option
option is not specified, the top delta will be used.</p></td></tr>
+
is not specified, the top delta will be used.</p></td></tr>
<tr valign="top" align="left">
 
<td width="11%"></td>
 
<td width="31%">
 
 
 
<p><b>-U</b> <i>uuid2</i></p></td>
 
<td width="1%"></td>
 
<td width="57%">
 
 
 
<p>Together with <b>-u</b> <i>uuid</i>, specify that all
 
snapshots in the range <i>uuid</i>...<i>uuid2</i> are to be
 
merged.</p> </td></tr>
 
 
<tr valign="top" align="left">
 
<tr valign="top" align="left">
 
<td width="11%"></td>
 
<td width="11%"></td>
Line 1,071: Line 883:
 
snapshots have more than a single child, they will be
 
snapshots have more than a single child, they will be
 
impossible to merge.</p></td></tr>
 
impossible to merge.</p></td></tr>
<tr valign="top" align="left">
 
<td width="11%"></td>
 
<td width="31%">
 
 
<p><b>-n</b> <i>new_delta</i></p></td>
 
<td width="1%"></td>
 
<td width="57%">
 
 
<p>If this option is set, instead of merging the child
 
delta into its parent, both the parent and the child deltas
 
are merged into a newly created file <i>new_delta</i>, which
 
replaces the parent delta. Both deltas are then removed.</p></td></tr>
 
 
</table>
 
</table>
  
Line 1,164: Line 964:
  
 
<p style="margin-top: 1em">[<b>-H</b>]
 
<p style="margin-top: 1em">[<b>-H</b>]
[<b>-u&nbsp;</b><i>uuid</i>] [<b>-s</b>]
+
[<b>-u&nbsp;</b><i>uuid</i>]
 
[<b>-o&nbsp;</b><i>field</i>[,<i>field</i>...]]
 
[<b>-o&nbsp;</b><i>field</i>[,<i>field</i>...]]
 
<i>DiskDescriptor.xml</i></p> </td></tr>
 
<i>DiskDescriptor.xml</i></p> </td></tr>
Line 1,184: Line 984:
 
<p style="margin-left:42%;">Filter the output to a
 
<p style="margin-left:42%;">Filter the output to a
 
specified <i>uuid</i>.</p>
 
specified <i>uuid</i>.</p>
 
<table width="100%" border="0" rules="none" frame="void"
 
      cellspacing="0" cellpadding="0">
 
<tr valign="top" align="left">
 
<td width="11%"></td>
 
<td width="21%">
 
 
<p><b>-s</b>, <b>--snapshot</b></p></td>
 
<td width="10%"></td>
 
<td width="58%">
 
 
<p>List in terms of snapshots. By default (i.e. without
 
this option) the command lists all deltas, and top delta is
 
marked as current. When this option is used, top delta is
 
not listed, and the snapshot which is the parent of top
 
delta is marked as current.</p></td></tr>
 
</table>
 
  
 
<p style="margin-left:11%;"><b>-o</b>, <b>--output</b>
 
<p style="margin-left:11%;"><b>-o</b>, <b>--output</b>
Line 1,235: Line 1,018:
 
<p style="margin-top: 1em"><b>ploop&nbsp;copy</b></p></td>
 
<p style="margin-top: 1em"><b>ploop&nbsp;copy</b></p></td>
 
<td width="2%"></td>
 
<td width="2%"></td>
<td width="72%">
+
<td width="57%">
  
 
<p style="margin-top: 1em"><b>-s</b> <i>device</i>
 
<p style="margin-top: 1em"><b>-s</b> <i>device</i>
[<b>-F&nbsp;</b><i>stop_command</i>] {
+
[<b>-F&nbsp;</b><i>stop_command</i>]
[<b>-d&nbsp;</b><i>file</i>] |
+
[<b>-d&nbsp;</b><i>file</i>]</p> </td>
[<b>-o&nbsp;</b><i>output_fd</i>]
+
<td width="15%">
[<b>-f&nbsp;</b><i>feedback_fd</i>] }</p></td></tr>
+
</td></tr>
 
</table>
 
</table>
  
Line 1,247: Line 1,030:
 
in-kernel write tracker for the specified ploop
 
in-kernel write tracker for the specified ploop
 
<i>device,</i> then sends all the data blocks from the top
 
<i>device,</i> then sends all the data blocks from the top
delta image to a pipe specified by the <i>output_fd</i>
+
delta image to stdout (supposedly read by destination
argument (<b>stdout</b>, i.e. <b>1</b> by default),
+
<b>ploop copy</b>) or a <i>file</i>. After that, it
supposedly read by destination <b>ploop copy</b>, or a
+
iteratively gets the list of the modified data blocks from
<i>file</i>. After that, it iteratively gets the list of the
+
the kernel and sends those blocks again. After a number of
modified data blocks from the kernel and sends those blocks
+
iterations (or when the list is empty), it executes the
again. After a number of iterations (or when the list is
+
<i>stop_command</i> (this could be <b>vzctl stop</b> or
empty), it executes the <i>stop_command</i> (this could be
+
<b>vzctl chkpnt</b>) and does the last iteration of sending
<b>vzctl stop</b> or <b>vzctl chkpnt</b>) and does the last
+
the modified data blocks. Finally, it checks that the data
iteration of sending the modified data blocks. Finally, it
+
were not modified, error is returned otherwise.</p>
checks that the data were not modified, error is returned
 
otherwise.</p>
 
 
 
<p style="margin-top: 1em">If <i>feedback_fd</i> is
 
specified, it is used to read back from the ploop copy
 
receiving side. The feedback channel is currently used to
 
wait for <b>fdatasync</b>(2) completion.</p>
 
  
 
==== copy (receiving) ====
 
==== copy (receiving) ====
Line 1,274: Line 1,050:
 
<p style="margin-top: 1em"><b>ploop&nbsp;copy</b></p></td>
 
<p style="margin-top: 1em"><b>ploop&nbsp;copy</b></p></td>
 
<td width="2%"></td>
 
<td width="2%"></td>
<td width="58%">
+
<td width="10%">
  
<p style="margin-top: 1em"><b>-d</b> <i>file</i>
+
<p style="margin-top: 1em"><b>-d</b> <i>file</i></p></td>
[<b>-i&nbsp;</b><i>input_fd</i>]
+
<td width="62%">
[<b>-f&nbsp;</b><i>feedback_fd</i>]</p> </td>
 
<td width="14%">
 
 
</td></tr>
 
</td></tr>
 
</table>
 
</table>
  
<p style="margin-top: 1em">Reads the data blocks (provided
+
<p style="margin-top: 1em">Reads the data block (provided
by the source <b>ploop copy</b>) from the file descriptor
+
by the source <b>ploop copy</b>) from the <b>stdin</b> and
<i>input_fd</i> (<b>stdin</b>, i.e. <b>0</b> by default) and
 
 
writes them to the <i>file</i>.</p>
 
writes them to the <i>file</i>.</p>
 
<p style="margin-top: 1em">If <i>feedback_fd</i> is
 
specified, it is used to send status back to the ploop copy
 
sending side.</p>
 
  
 
=== Ballooning ===
 
=== Ballooning ===
Line 1,344: Line 1,113:
 
<p style="margin-top: 1em"><b>ploop&nbsp;balloon&nbsp;discard</b></p> </td>
 
<p style="margin-top: 1em"><b>ploop&nbsp;balloon&nbsp;discard</b></p> </td>
 
<td width="2%"></td>
 
<td width="2%"></td>
<td width="50%">
+
<td width="55%">
  
 
<p style="margin-top: 1em">[<b>--automount</b>]
 
<p style="margin-top: 1em">[<b>--automount</b>]
 
[<b>--to-free&nbsp;</b><i>size</i>]
 
[<b>--to-free&nbsp;</b><i>size</i>]
[<b>--min-block&nbsp;</b><i>min_size</i>] [<b>--defrag</b>]
+
[<b>--min-block&nbsp;</b><i>min_size</i>]
<i>DiskDescriptor.xml</i></p> </td>
+
<i>DiskDescriptor.xml</i></p> </td></tr>
<td width="5%">
 
</td></tr>
 
 
</table>
 
</table>
  
Line 1,362: Line 1,129:
 
<b>--automount</b> option to automatically mount ploop for
 
<b>--automount</b> option to automatically mount ploop for
 
the duration of the operation.</p>
 
the duration of the operation.</p>
 
<p style="margin-top: 1em">Option <b>--defrag</b> can be
 
used to run a filesystem defragmentation utility (currently
 
e4defrag2 on ext4 only) before the main operation.</p>
 
  
 
<p style="margin-top: 1em">Option <b>--to-free</b> can be
 
<p style="margin-top: 1em">Option <b>--to-free</b> can be
Line 1,589: Line 1,352:
  
 
<p style="margin-left:22%;">Error from <b>fsck</b>(8).</p>
 
<p style="margin-left:22%;">Error from <b>fsck</b>(8).</p>
 
<p style="margin-left:11%;"><b>43</b>,&nbsp;<b>SYSEXIT_NOSNAP</b></p>
 
 
<p style="margin-left:22%;">Can&rsquo;t find specified
 
snapshot UUID.</p>
 
  
 
== SEE ALSO ==
 
== SEE ALSO ==

Please note that all contributions to OpenVZ Virtuozzo Containers Wiki may be edited, altered, or removed by other contributors. If you don't want your writing to be edited mercilessly, then don't submit it here.
If you are going to add external links to an article, read the External links policy first!

To edit this page, please answer the question that appears below (more info):

Cancel Editing help (opens in new window)