Sun Java System Messaging Server 6 2005Q4 管理指南

mm_init 中的错误

mm_init 中的错误通常表明 MTA 配置有问题。如果运行 imsimta test -rewrite 实用程序,就会显示这些错误。其他实用程序(如 imsimta cnbuild)、通道、服务器或浏览器也可能返回此类错误。

经常遇到的 mm_init 错误包括:

别名的错误等值. . .

别名文件条目右侧部分的格式不正确。

无法打开别名包含文件. . .

无法打开别名文件所包含的文件。

发现重复的别名. . .

两个别名文件条目具有相同的左侧部分。您需要找出并删除重复项。查找提示出错行 #XXX 的错误消息,其中 XXX 是行号。您可以在此行上修复重复的别名。

通道表中的重复的主机. . .

此错误消息表示您在 MTA 配置中有两个具有相同正式主机名的通道定义。

请注意,MTA 配置文件 (imta.cnf) 的重写规则(上部)中的多余空白行将导致 MTA 把配置文件的提示解释为通道定义。请确保文件的首行不是空白行。由于经常有多个相同模式(左侧)的重写规则,这就导致 MTA 将其解释成带有非唯一正式主机名的通道定义。请检查 MTA 配置中的所有带有重复正式主机名的通道定义和文件的上部(重写规则)中所有不正确的空白行。

发现重复的映射名称. . .

此消息表示两个映射表具有相同的名称,需要删除其中一个重复的映射表。但是,映射文件中的格式化错误可能会导致 MTA 将某些内容错误地解释成映射表的名称。例如,无法正确地缩进映射表条目将导致 MTA 认为该条目的左侧实际上是映射表的名称。请检查映射文件中的常规格式并检查映射表名称。


注 –

在带有映射表名称的任一行的前后应有一行空白行。但是,在映射表的条目中间不应插入任何空白行。


映射名称太长. . .

此错误表示映射表名称太长,需要缩短。映射文件中的格式化错误可能会导致 MTA 将某些内容错误地解释成映射表名称。例如,无法正确地缩进映射表条目将导致 MTA 认为该条目的左侧实际上是映射表的名称。检查映射文件和映射表名称。

初始化 ch_ facility 时出错:编译的字符集版本不匹配

如果看到此消息,则需要通过命令 imsimta chbuild 重新编译并重新安装已编译的字符集表。有关更多信息,请参见《Sun Java System Messaging Server 6 2005Q4 Administration Reference》中的“imsimta chbuild”

初始化 ch_ facility 时出错:没有空间进入. . .

此错误消息通常表示您需要调整 MTA 字符集内部表的大小,然后使用以下命令重建已编译的字符集表:


imsimta chbuild -noimage -maximum -option
imsimta chbuild

请验证在作出此更改前是否不需要重新编译和重新启动任何其他字符集表。有关 imsimta chbuild 的更多信息,请参阅《Sun Java System Messaging Server 6 2005Q4 Administration Reference》中的“imsimta chbuild”

对于系统来说本地主机别名或本来的名称太长. . .

此错误表示本地主机别名或本来的名称太长(通道块中第二个名称或后续名称的可选右侧部分)。但是,MTA 配置文件中较早的某些语法错误(例如,重写规则中的多余空白行)可能会导致 MTA 将某些内容错误地解释成通道定义。除了检查配置文件的提示行,还要检查该行以上的其他语法错误。特别是,如果 MTA 在其中发出此错误的行是要作为重写规则,则请确保检查此行之上的多余空白行。

别名没有等值地址. . .

别名文件中的某个条目缺少右侧部分(翻译值)。

通道没有正式主机名. . .

此错误表示通道定义块缺少所需的第二行(正式主机名行)。有关通道定义块的更多信息,请参见 Sun Java System Messaging Server Administration Reference 中关于 MTA 配置和命令行实用程序的章节以及第 12 章,配置通道定义。在每个通道定义块的前后需要一个空白行,但空白行不能存在于通道定义的通道名称行和正式主机名行之间。还要注意,MTA 配置文件的重写规则部分不允许有空白行。

正式主机名太长

通道的正式主机名(通道定义块的第二行)的长度限制为 128 个八位字节。如果要尝试在通道上使用较长的正式主机名,请将其缩短成占位符名称,然后使用重写规则使较长名称与短的正式主机名匹配。如果使用 l(本地)通道主机名,您可能会看到此情况。例如:


Original l Channel:
!delivery channel to local /var/mail store
l subdirs 20 viaaliasrequired maxjobs 7 pool LOCAL_POOL
walleroo.pocofronitas.thisnameismuchtoolongandreallymakesnosensebutitisan
example.monkey.gorilla.orangutan.antidisestablismentarianism.newt.salaman
der.lizard.gecko.komododragon.com

Create Place Holder:
!delivery channel to local /var/mail store 
l subdirs 20 viaaliasrequired maxjobs 7 pool LOCAL_POOL
newt

Create Rewrite Rule:
newt.salamander.lizard.gecko.komododragon.com   $U%$D@newt

请注意,使用 l(本地)通道时,需要使用 REVERSE 映射表。有关用法和语法的信息,请参阅 Sun Java System Messaging Server Administration Reference 中关于 MTA 配置的章节。

MTA 配置文件中较早的某些语法错误(例如,重写规则中的多余空白行)可能会导致 MTA 将某些内容错误地解释成通道定义。这可能会导致将预定的重写规则解释为正式主机名。除了检查配置文件的提示行,还要检查该行以上的其他语法错误。特别是,如果 MTA 在其中发出此错误的行是要作为重写规则,请确保检查此行之上的多余空白行。