Provided by: cyrus-common_2.4.18-3_i386 bug


       cyrreconstruct - reconstruct mailboxes


       cyrreconstruct [ -C config-file ] [ -p partition ] [ -x ] [ -r ] [ -f ]
                   [ -k ] [ -s ] [ -g ] [ -G ] [ -R ] [ -o ] [ -O ] mailbox...
       cyrreconstruct [ -C config-file ] -m


       cyrreconstruct  rebuilds one or more IMAP mailboxes.  When invoked with
       the -m switch, it rebuilds the master mailboxes file.  It can  be  used
       to recover from almost any sort of data corruption.

       If cyrreconstruct 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  cyrreconstruct  attempts  to  preserve
       includes the flag names, flag state, and internaldate.   cyrreconstruct
       derives all other information from the message files.

       cyrreconstruct reads its configuration options out of the imapd.conf(5)
       file  unless  specified  otherwise  by  -C.   Any   mailbox   directory
       underneath  the  path  specified  in  the  partition-news configuration
       option is assumed to be in news format.

       cyrreconstruct does not adjust the quota usage recorded  in  any  quota
       root  files.   After  running  cyrreconstruct,  it  is advisable to run
       cyrquota(8) with the -f switch in order to fix the quota root files.


       -C config-file
              Read configuration options from config-file.

       -p partition
              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)

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

       -r     Recursively reconstruct all sub-mailboxes of  the  mailboxes  or
              mailbox prefixes given as arguments.

       -f     Examine   the   filesystem   underneath   mailbox,   adding  all
              directories with a cyrus.header found there  as  new  mailboxes.
              Useful for restoring mailboxes from backups.

       -s     Don't stat underlying files.  This makes reconstruct run faster,
              at the expense of not noticing some issues (like zero byte files
              or size mistmatches).  "reconstruct -s" should be quite fast.

       -n     Don't  make  any  changes.   This  gives equivalent behaviour to
              chk_cyrus where problems are reported, but not fixed.

       -G     Force  re-parsing  of  the  underlying  message   (checks   GUID
              correctness).   Reconstruct  with  -G  should  fix  all possible
              individual message issues, including corrupted data files.

       -R     Perform a UID upgrade operation on  GUID  mismatch  files.   Use
              this  option  if  you  think your index is corrupted rather than
              your message files, or if all backup attempts  have  failed  and
              you're happy to be served the missing files.

       -U     Use  this option if you have corrupt message files in your spool
              and have been unable to restore them  from  backup.   This  will
              make the mailbox IOERROR free and fix replication.  WARNING this
              deletes corrupt message files for ever -  so  make  sure  you've
              exhausted other options first!

       -o     Ignore  odd  files  in  your mailbox disk directories.  Probably
              useful if you are using some tool which adds additional tracking

       -O     Delete odd files.  This is the opposite of '-o'.

              Rebuild  the  mailboxes file.  Use whatever data in the existing
              mailboxes file it can scavenge, then scans all partitions listed
              in the imapd.conf(5) file for additional mailboxes.


       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:

       reconstruct -r user.ben-lacy

       If  you have the unixhierarchysep:yes option set in /etc/imapd.conf you
       would need to run:

       reconstruct -r user/ben.lacy