您所在的位置: 首页>>读书频道>>操作系统>>Linux>>

18.6.5 运行模式

http://book.51cto.com  2008-04-22 09:37  [美]Evi Nemeth Garth Snyder Trent R.Hein  人民邮电出版社  我要评论(0)

18.6.5  运行模式

您可以在几种模式下运行sendmail,用-b标志进行选择。-b代表“be”(是)或“become”(变成),它总是和别的标志一起使用,来确定sendmail将扮演的角色。表18.4列出了合法的值。

表18.4 sendmail主要模式的命令行标志

   

   

-bd

在守护进程模式下运行,监听端口25上的连接

-bD

在守护进程模式下运行,但在前台而不是后台a

-bh

查看最近的连接信息(等效于hoststat

-bH

清除过时的连接信息在硬盘上的副本(等效于purgestat

-bi

初始化散列的别名(等效于newaliases

-bm

作为邮寄程序(mailer)运行,以通常方式投递邮件(默认)

-bp

打印邮件队列(等效于mailq

-bP

通过共享内容打印队列中的项数(8.12及以后版本)

续表

   

   

-bs

进入SMTP服务程序模式(在标准输入上,不是在端口25上)

-bt

进入地址测试模式

-bv

只验证邮件地址,而不发送邮件

如果传入的邮件预计是从Internet上来的,那么要在守护进程模式(-bd)下运行sendmail。在这种模式下,sendmail将监听网络端口25并等待任务 。在守护进程模式下运行sendmail时,通常也会指定-q标志,它设置的是sendmail处理邮件队列的时间间隔。例如,-q30m或-q1h将每30分钟或每小时运行一次排队操作。

sendmail正常情况下会尝试立即投递消息,把它们暂时保存在队列中只是为了保证可靠性。但是如果您的主机太忙,或者无法到达目的地的机器,sendmail就会把消息排入队列,稍后再发送它。sendmail每次处理队列时会派生出子进程,所以不要把队列处理的时间间隔设置得太短了。RFC1123推荐在两次运行之间至少间隔30分钟。sendmail会进行上锁,所以多个队列同时运行也是安全的。

sendmail 8.12已经增加了一种新功能,帮助处理大型的邮递列表和大型的队列:用信封划分队列组。这种功能详细介绍在18.13.2节。

sendmail只在启动的时候读取它的配置文件sendmail.cf。因此,在您改动过配置文件以后,必须杀死它再重新启动,或者向它发送一个HUP信号。sendmail创建一个sendmail.pid文件,其中包含有它的进程ID和启动它的命令。您应该用绝对路径来启动它,因为在接收到HUP信号的时候,它会再次执行这个命令。sendmail.pid文件能够让进程以下面的命令发HUP信号给sendmail:

 #  kill  -HUP  ‘head  -1  sendmail.pid‘
PID文件的位置以前是一个编译时刻的参数,但是它现在可以用.mc配置文件里的confPID_FILE选项来设置。
define(confPID_FILE,  ‘/var/run/sendmail.pid’)
默认值与OS有关,但通常不是/var/run/sendmail.pid就是/etc/mail/sendmail.pid。Red Hat、Fedora、Ubuntu和Debian使用/var/run/sendmail.pid,而SUSE仍然把它保存在/var/run/sendmail目录下。
【责任编辑:夏书 TEL:(010)68476606】

回书目   上一节   下一节
上一篇: 18.6.4 开关文件 下一篇: 18.6.6 邮件队列
系统应用日志分析管理
Linux——从菜鸟到高手
网络管理系统如何支撑ITSM
垃圾邮件新对策:远程定制托管服务
企业Web安全威胁在线评估系统
 
 验证码: (点击刷新验证码)   匿名发表
  • 野蛮生长

  • 作者:冯仑著
  • “地产界的思想家”冯仑纵横生意江湖20年来,第一次系统梳理出书。  三十年来中国民营企业从前公司时代发展到公司时代,21..
Copyright©2005-2008 51CTO.COM 版权所有