<!-- Creator : groff version 1.18.1.1 --> <!-- CreationDate: Thu Dec 1 12:02:38 2011 --> <html> <head> <meta name="generator" content="groff -Thtml, see www.gnu.org"> <meta name="Content-Style" content="text/css"> <title>RECONSTRUCT</title> </head> <body> <h1 align=center>RECONSTRUCT</h1> <a href="#NAME">NAME</a><br> <a href="#SYNOPSIS">SYNOPSIS</a><br> <a href="#DESCRIPTION">DESCRIPTION</a><br> <a href="#OPTIONS">OPTIONS</a><br> <a href="#EXAMPLES">EXAMPLES</a><br> <a href="#FILES">FILES</a><br> <hr> <a name="NAME"></a> <h2>NAME</h2> <!-- INDENTATION --> <table width="100%" border=0 rules="none" frame="void" cols="2" cellspacing="0" cellpadding="0"> <tr valign="top" align="left"> <td width="10%"></td> <td width="89%"> <p>reconstruct − reconstruct mailboxes</p> </td> </table> <a name="SYNOPSIS"></a> <h2>SYNOPSIS</h2> <!-- INDENTATION --> <table width="100%" border=0 rules="none" frame="void" cols="2" cellspacing="0" cellpadding="0"> <tr valign="top" align="left"> <td width="10%"></td> <td width="89%"> <p><b>reconstruct</b> [ <b>−C</b> <i>config-file</i> ] [ <b>−p</b> <i>partition</i> ] [ <b>−x</b> ] [ <b>−r</b> ] [ <b>−f</b> ] <i>mailbox</i>...<b><br> reconstruct</b> [ <b>−C</b> <i>config-file</i> ] <b>−m</b></p> </td> </table> <a name="DESCRIPTION"></a> <h2>DESCRIPTION</h2> <!-- INDENTATION --> <table width="100%" border=0 rules="none" frame="void" cols="2" cellspacing="0" cellpadding="0"> <tr valign="top" align="left"> <td width="10%"></td> <td width="89%"> <p><i>Reconstruct</i> rebuilds one or more IMAP mailboxes. When invoked with the <b>−m</b> switch, it rebuilds the master mailboxes file. It can be used to recover from almost any sort of data corruption.</p> <!-- INDENTATION --> <p>If <i>Reconstruct</i> can find existing header and index files, it attempts to preserve any data in them that is not derivable from the message files themselves. The state <i>reconstruct</i> attempts to preserve includes the flag names, flag state, and internaldate. <i>Reconstruct</i> derives all other information from the message files.</p> <!-- INDENTATION --> <p><i>Reconstruct</i> reads its configuration options out of the <i>imapd.conf</i>(5) file unless specified otherwise by <b>-C</b>. Any mailbox directory underneath the path specified in the <i>partition-news</i> configuration option is assumed to be in news format.</p> <!-- INDENTATION --> <p><i>Reconstruct</i> does not adjust the quota usage recorded in any quota root files. After running <i>reconstruct</i>, it is advisable to run <i>quota</i>(8) with the <i>−f</i> switch in order to fix the quota root files.</p> </td> </table> <a name="OPTIONS"></a> <h2>OPTIONS</h2> <!-- INDENTATION --> <table width="100%" border=0 rules="none" frame="void" cols="2" cellspacing="0" cellpadding="0"> <tr valign="top" align="left"> <td width="10%"></td> <td width="89%"> <p><b>−C</b> <i>config-file</i></p></td> </table> <!-- INDENTATION --> <table width="100%" border=0 rules="none" frame="void" cols="2" cellspacing="0" cellpadding="0"> <tr valign="top" align="left"> <td width="21%"></td> <td width="77%"> <p>Read configuration options from <i>config-file</i>.</p> </td> </table> <!-- INDENTATION --> <table width="100%" border=0 rules="none" frame="void" cols="2" cellspacing="0" cellpadding="0"> <tr valign="top" align="left"> <td width="10%"></td> <td width="89%"> <p><b>−p</b> <i>partition</i></p></td> </table> <!-- INDENTATION --> <table width="100%" border=0 rules="none" frame="void" cols="2" cellspacing="0" cellpadding="0"> <tr valign="top" align="left"> <td width="21%"></td> <td width="77%"> <p>Search for the listed (non-existant) mailboxes on the indicated partition. Create the mailboxes in the database in addition to reconstructing them. (not compatible with the use of wildcards)</p> </td> </table> <!-- TABS --> <table width="100%" border=0 rules="none" frame="void" cols="4" cellspacing="0" cellpadding="0"> <tr valign="top" align="left"> <td width="11%"></td> <td width="4%"> <p><b>−x</b></p> </td> <td width="5%"></td> <td width="77%"> <p>When processing a mailbox which is not in the mailbox list (e.g. via the -p or -f options), do not import the metadata from the mailbox, instead create it anew (this specifically affects at least the mailbox’s seen state unique identifier, user flags, and ACL).</p> </td> <tr valign="top" align="left"> <td width="11%"></td> <td width="4%"> <p><b>−r</b></p> </td> <td width="5%"></td> <td width="77%"> <p>Recursively reconstruct all sub-mailboxes of the mailboxes or mailbox prefixes given as arguments.</p> </td> <tr valign="top" align="left"> <td width="11%"></td> <td width="4%"> <p><b>−f</b></p> </td> <td width="5%"></td> <td width="77%"> <p>Examine the filesystem underneath mailbox, adding all directories with a cyrus.header found there as new mailboxes. Useful for restoring mailboxes from backups.</p> </td> <tr valign="top" align="left"> <td width="11%"></td> <td width="4%"> <p><b>−m</b></p> </td> <td width="5%"></td> <td width="77%"> <p><b>NOTE: CURRENTLY UNAVAILABLE</b></p> </td> </table> <!-- INDENTATION --> <table width="100%" border=0 rules="none" frame="void" cols="2" cellspacing="0" cellpadding="0"> <tr valign="top" align="left"> <td width="21%"></td> <td width="77%"> <p>Rebuild the <i>mailboxes</i> file. Use whatever data in the existing <i>mailboxes</i> file it can scavenge, then scans all partitions listed in the <i>imapd.conf</i>(5) file for additional mailboxes.</p> </td> </table> <a name="EXAMPLES"></a> <h2>EXAMPLES</h2> <!-- INDENTATION --> <table width="100%" border=0 rules="none" frame="void" cols="2" cellspacing="0" cellpadding="0"> <tr valign="top" align="left"> <td width="10%"></td> <td width="89%"> <p>You want to reconstruct the index files for a user, you have recovered a deleted mail file from backup and given it a suitable name (eg user/ben-lacy/33.), but it is not visible since it is not indexed:</p> <!-- INDENTATION --> <pre>reconstruct -r user.ben-lacy </pre> <!-- INDENTATION --> <p>If you have the <b>unixhierarchysep:yes</b> option set in <b>/etc/imapd.conf</b> you would need to run:</p> <!-- INDENTATION --> <pre>reconstruct -r user/ben.lacy </pre> </td> </table> <a name="FILES"></a> <h2>FILES</h2> <!-- INDENTATION --> <table width="100%" border=0 rules="none" frame="void" cols="2" cellspacing="0" cellpadding="0"> <tr valign="top" align="left"> <td width="10%"></td> <td width="89%"> <p><b>/etc/imapd.conf</b></p></td> </table> <hr> </body> </html>