本节介绍了以下用于管理和监视邮箱的实用程序:mboxutil、hashdir、readership。
使用 mboxutil 命令执行典型的邮箱维护任务。mboxutil 任务包括以下内容:
列出邮箱
列出并删除孤立的和非活动的邮箱
创建邮箱
重命名邮箱
将邮箱从一个分区移动到另一个分区
删除孤立的或非活动的邮箱
您还可以使用 mboxutil 命令查看有关配额的信息。有关更多信息,请参见监视配额限制。
注意,不应在执行中中止 mboxutil 进程。如果使用 SIGKILL (kill -9) 中止了该进程,则可能潜在地需要每个服务器重新启动并完成恢复。
表 18–11 列出了 mboxutil 命令。有关详细的语法和使用要求,请参见 《Sun Java System Messaging Server 6 2005Q4 Administration Reference》。
表 18–11 mboxutil 选项
选项 |
说明 |
---|---|
-a |
已作废。用于列出所有用户的配额信息。使用。imquotacheck |
-c mailbox |
创建指定邮箱。可以与 -f 一起使用。 在创建第二个邮箱前必须已存在一个邮箱。 |
-d mailbox |
删除指定邮箱。 要从邮件存储中删除用户,请使用 -d mailbox 的以下值: user/userid/INBOX 例如,要从邮件存储中删除用户 john,则使用 -d user/john/INBOX。要删除用户 john 的邮箱中的 mm 文件夹,使用 -d user/john/mm。 建议的删除用户的方法是在 LDAP 目录中将用户状态标记为已删除(通过使用 Delegated Administrator 实用程序的 commadmin user delete 命令或 Delegated Administrator 控制台)。下一步,使用 commadmin user purge 命令将被标记为已删除超过指定天数的用户清除。 如果使用的是上一段中介绍的 Delegated Administrator 实用程序,则无需使用 mboxutil -d 命令来删除邮箱。 |
-e |
用于清除邮件存储中所有已删除的邮件。此选项还可与 -p pattern 选项一起使用,以擦除名称与 pattern 匹配的所有已删除的邮箱。 |
-f file |
用于指定存储邮箱名称的文件。-f 选项可以与 -c、-d 或 -r 选项一起使用。 文件包含一个在其上执行了 mboxutil 命令的邮箱的列表。以下是数据文件中条目的示例: user/daphne/INBOXuser/daphne/projxuser/daphne/mm |
-k mailbox cmd |
已作废。在文件夹级别中锁定指定邮箱;运行指定命令;命令完成后,取消锁定邮箱。 |
-l |
在服务器上列出所有邮箱。 如果要为不同的语言环境创建多字节文件夹,您应编辑:msg_svr_base/sbin/bundles/encbylang.properties,以便将相应的字符集与 LANG 环境变量相关联。 |
-o |
检查孤立帐户。此选项将在当前邮件服务器主机中搜索在 LDAP 中没有相应条目的收件箱。例如,-o 选项将查找已从 LDAP 删除或已移动到另一个服务器主机的拥有者的收件箱。对于找到的每个孤立帐户,mboxutil 将把以下命令写入标准输出: mboxutil-d user/userid/INBOX 除非已指定 -w |
-p MUTF7_IMAP_pattern |
与 -l 选项一起使用时,仅列出名称与 MUTF7_IMAP_pattern 匹配的那些邮箱。 还可以与 -d 或 -e 选项一起使用,以删除或擦除名称与 MUTF7_IMAP_pattern 匹配的邮箱。 您可以使用 IMAP 通配符。此选项需要的是格式为 IMAP M-UTF-7 的模式。不建议您使用此方法来搜索非 ascii 邮箱。要搜索非 ascii 邮箱,请使用 -P 选项。 |
-P regexp |
仅列出那些名称与指定的 POSIX 正则表达式匹配的邮箱。此选项需要本地语言的 regexp |
-q domain |
已作废。使用 imquotacheck -d domain |
-r oldname newname[partition] |
将邮箱从 oldname 重命名为 newname。要将文件夹从一个分区移动到另一个分区,请使用 partition 选项指定新分区。可以与 -f 标志一起使用以使用文件。 此选项可用于重命名用户。例如,mboxutil -r user/user1/INBOX user/user2/INBOX 可以将所有邮件和邮箱从 user1 移到 user2,并在新的 INBOX 中显示新邮件。(如果 user2 已经存在,则此操作将会失败。) |
-R mailbox |
用于恢复已删除但尚未被清除的邮件。 在邮箱被擦除或过期时,已删除邮件的 uid 将存储在 store.exp 文件中。cleanup 页面已通过之后,imexpire 将物理删除这些邮件。错误地发布了擦除或过期消息时,此选项可用于将已删除但尚未被 imexpire 清除的邮件恢复至原始邮箱。 |
-s |
在与 -l 选项一起使用时,仅显示邮箱名称。将不显示其他任何数据。 |
-t num |
列出在指定天数未被访问的邮箱 (num)。-t 选项必须与 -o 选项(它用于标识孤立邮箱)一起使用。 从而使 -t 选项可以同时标识非活动邮箱(基于最近一次访问的日期)和孤立邮箱(在 LDAP 目录中没有相应用户条目的邮箱)。 要标识(列出)孤立邮箱和非活动邮箱,使用 mboxutil -o -w file -t num。 要将这些孤立邮箱和非活动邮箱标记为已删除,使用 mboxutil -d -f file,其中 file 与前面的 -w file 所使用的是同一个文件。 要使用此功能,config 变量 local.enablelastaccess 已被启用的天数必须至少为 -t 选项所指定的天数。 |
-u user |
已作废。用于列出用户信息。使用 imquotacheck -u user |
-w file |
与 -o 选项一起使用。将由 -o 选项(标识孤立帐户)生成的邮箱名称写入文件。 |
-x |
与 -l 选项一起使用时,将显示邮箱的路径和访问控制。 |
POSIX 正则表达式可用于 mboxutil 命令中。
必须用以下格式指定邮箱名称:user/userid/mailbox,其中 userid 是拥有邮箱的用户,mailbox 是邮箱的名称。对于托管域,userid 是 uid@domain。
例如,以下命令将为用户 ID 为 crowe 的用户创建名为 INBOX 的邮箱。INBOX 是用于将邮件传送给用户 crowe 的默认邮箱。
mboxutil -c user/crowe/INBOX
重要提示:名称 INBOX 是为每个用户保留的默认邮箱。INBOX 是唯一不区分大小写的文件夹名称。所有其他文件夹名称都区分大小写。
要列出所有用户的所有邮箱,请运行以下命令:
mboxutil -l
要列出所有邮箱并且包含路径和 ACL 信息,请运行以下命令:
mboxutil -l -x
要为用户 daphne 创建名为 INBOX 的默认邮箱,运行以下命令:
mboxutil -c user/daphne/INBOX
要为用户 delilah 删除名为 projx 的邮件文件夹,运行以下命令:
mboxutil -d user/delilah/projx
要为用户 druscilla 删除名为 INBOX 的默认邮箱及所有邮件文件夹,运行以下命令:
mboxutil -d user/druscilla/INBOX
要将用户 desdemona 的邮件文件夹 memos 重命名为 memos-april,运行以下命令:
mboxutil -r user/desdemona/memos user/desdemona/memos-april
要将用户 dimitria 的邮件帐户移动到新分区,运行以下命令:
mboxutil -r user/dimitria/INBOX user/dimitria/INBOX partition
其中 partition 用于指定新分区的名称。
要将用户 dimitria 的名为 personal 的邮件文件夹移动到新分区,运行以下命令:
mboxutil -r user/dimitria/personal user/dimitria/personal partition
要搜索孤立帐户(孤立帐户是在 LDAP 中没有相应条目的邮箱),使用以下命令:
mboxutil -o |
命令输出如下所示:
mboxutil: Start checking for orphaned mailboxes user/annie/INBOX user/oliver/INBOX mboxutil: Found 2 orphaned mailbox(es) mboxutil: Done checking for orphaned mailboxes
使用以下命令创建列出可转换为脚本文件的孤立邮箱的文件,用于删除孤立邮箱(示例文件名为 orphans.cmd):
mboxutil -o -w orphans.cmd |
命令输出如下所示:
mboxutil: Start checking for orphaned mailboxes mboxutil: Found 2 orphaned mailbox(es) mboxutil: Done checking for orphaned mailboxes
使用以下命令删除孤立文件:
mboxutil -d -f orphans.cmd |
邮件存储中的邮箱以散列结构存储以便进行快速搜索。因此,要查找包含特定用户的邮箱的目录,请使用 hashdir 实用程序。
此实用程序可以识别包含特定帐户的邮件存储的目录。此实用程序将报告邮件存储的相对路径,例如 d1/a7/。该路径相对于基于用户 ID 的级别之前的目录级别。实用程序会将路径信息发送到标准输出。
例如,要查找用户 crowe 的邮箱的相对路径,请运行以下命令:
hashdir crowe
readership 实用程序将报告有多少用户(而不是邮箱拥有者)已经阅读了共享 IMAP 文件夹中的邮件。
IMAP 文件夹的拥有者可以授予其他用户阅读文件夹中的邮件的权限。允许其他用户访问的文件夹称为共享文件夹。管理员可以使用 readership 实用程序查看有多少用户(而不是拥有者)正在访问共享文件夹。
此实用程序将扫描所有邮箱并为每个共享文件夹生成一行输出,报告阅读者的数量,接着是一个空格和邮箱的名称。
每个阅读者都是在过去的指定天数内选择了共享文件夹的独特验证身份。用户阅读自己的个人邮箱时系统不进行计数。系统不报告个人邮箱,除非至少有一个文件夹拥有者以外的阅读者。
例如,以下命令行将在过去 15 天内选择了共享 IMAP 文件夹的任何身份都作为阅读者进行计数:
readership -d 15