在Sendmail中包含额外的别名文件

我遇到了一个第三方软件的问题,它创build了sendmail使用的自己的别名文件。 通过configuration选项,谷歌和手册页看起来像我只能定义一个别名文件,这意味着我只能得到所有的软件的地址或所有的本地别名。

我已经尝试将自己的条目附加到软件的别名文件中,但是每当地址发生变化,我的条目就会被删除。

我的问题是,有没有办法在sendmail.mc中定义addional别名文件或包含来自另一个文件的其他地址?

如果您阅读了Sendmail文档 ,您会发现:

ALIAS_FILE [/etc/mail/aliases] The location of the text version of the alias file(s). It can be a comma-separated list of names (but be sure you quote values with commas in them -- for example, use define(`ALIAS_FILE', `a,b') to get "a" and "b" both listed as alias files; otherwise the define() primitive only sees "a"). 

所以,你可以编辑你的sendmail.mc文件来使用一个共同定义的别名文件列表,然后重新生成你的sendmail.cf文件。 并重新启动Sendmail。

您不能有第二个别名文件,但是您可以使用语法包含一个文件

     :include:/ path / name 

因此,在别名文件中定义所有的别名,然后包含由您的软件创build的别名。

forms的别名

 alias :include:/path/to/some/alias_file 

从alias_file的内容中获取他们的电子邮件目标。 把每个电子邮件地址放在一个单独的行

例如,如果/ usr / local / etc / my_list包含一个你想作为“myfriends”别名的地址列表,你可以在/ etc / aliases中使用这个条目:

 myfriends :include:/usr/local/etc/my_list 

与my_list包含这样的每行一个合法的电子邮件地址

 phyllis [email protected] [email protected]