This appendix describes the additional utility programs that are included in the MHonArc distribution. The utility programs are installed with mhonarc during the installation process.
mha-dbedit allows modifications to be made to an archive database without regenerating any archive pages.
mha-dbrecover recreates an archive database from the individual message pages. This program is useful if an archive database gets corrupted, or accidentally deleted.
prompt> mha-dbrecover -outdir /path/to/archive
If the archive used different resource settings from the defaults for controling filenames, then you must specify those settings when invoking mha-dbrecover. For example, if you are using "shtml" for HTMLEXT, then you should invoke mha-dbrecover like the following:
mha-dbrecover will only recreate non-layout message related data. If the archive had resource settings that were different than the the defaults, then those resource settings must be specified when invoking mha-dbrecover. For example:
mha-dbrecover supports the additional command-line options:
Using the number range options are typically not needed, but may be useful if the archive is maintained with a MAXSIZE (or EXPIREAGE), and KEEPONRMM is active. The message number range options will allow you to minimize recovering processing by having mha-dbrecover skip messaages that will be dropped from the database due to the MAXSIZE, or EXPIREAGE, setting.
For example, say you have an archive directory with 1000 message pages numbered 0 through 999, and the maximum size of the archive is 200. The following command will make recovering more efficient by skipping the first 800 messages since they will be dropped from the database anyway:
prompt> mha-dbrecover -dbr-startnum 800 -outdir /path/to/archive
It is possible that message number order may not exactly match date order. You may want to increase the number range to take in account of possible anomolies where message number order may vary from message date order.
mha-decode is a utility program unrelated to MHonArc archives. mha-decode provides basic MIME decoding capabilites for messages.
If given mail folders as input, all messages within in the mail folders will be decoded. All message parts are written to files. If a filename is specified for a message part, that filename will be used when writing the part to a file. If no filename is specified in the message, a unique name will be used based upon the content-type of the message part.
A single message can be decoded by using the -single option.Only MHonArc options that affect parsing of mail folders are applicable for mha-decode. The following options are applicable: -conlen, -mhpattern, -msgsep, -noconlen, -outdir, -perlinc, -rcfile, -single, -umask.
mha-decode supports the additional command-line options:
prompt> mha-decode inbox
Use -outdir to have all decoded data placed into a separate directory:
prompt> mha-decode -outdir /var/tmp inbox
And to decode a single message:
prompt> mha-decode -single msg.822
or from standard input:
prompt> some_program | mha-decode -single
Save out attached messages and then pass them into MHonArc to be added to a archive:
prompt> mha-decode -dcd-digest -single digest prompt> mhonarc -outdir /path/to/archive -mhpattern '^822.*\.822$' .
There is a trailing dot, '.', at the end of the called to mhonarc to tell mhonarc to process the current working directory.
You will need to reset the MHPATTERN resource if normal input into the archive is from MH-style mail folders.