清华水木sendmail教程(2)

王朝other·作者佚名  2008-05-18
窄屏简体版  字體: |||超大  

sendmail工作原理

明白sendmail工作原理需要弄懂一大堆东东,象守护进程,脚本,文件,以及命令.

下面介绍一下这些东东.

sendmail守护进程

如果要sendmail处理发送来的信件,必须有一个守护进程在运行。sendmail守护

进程就是带有特殊标志位的sendmail程序。这个守护进程是被/etc/init.d/mail

脚本在系统启动的时候自动启动的.在此脚本中用来启动sendmail的命令如下:

/usr/lib/sendmail -bd -q15m

-bd标志是使sendmail作为一个守护程序运行。-q15m标志使sendmail fork出一个

子守护进程来每隔15分钟处理一次消息队列.

sendmail脚本

在一般的系统中(象我用的IRIS 6.3)随sendmail提供的有两个脚本来完成一些

通用的功能。尽量去使用这两个脚本来完成你的任务,因为它们是经过测试可以

正确执行的。

/etc/init.d/mail

用户很少需要去手动启动或者停止sendmail.只有在当要改变设置等情况下,你

必须终止所有运行的sendmail进程,"冻结(refreeze)"设置文件,然后重新启动

sendmail以使新的设置生效。要简化该工作,系统提供了一个脚本/etc/init.d/

mail.这个脚本只有一个参数,start|stop,用来启动或者关闭sendmail进程。

要停止sendmail进程,用以下命令:

/etc/init.d/mail stop

但你必须是root才可以有这个权限。如果用start参数来启动/etc/init.d/mail,

它检查sendmail相关文件和目录的权限和存在与否。如果需要的东东,例如

/var/spool/mqueue目录不见乐,这个脚本就创建它。而对其他一些复杂的

东东,例如/etc/aliases,该脚本就退出并给出一个提示。

当/etc/init.d/mail stop 命令被执行的时候,它向所有的sendmail进程发出

SIGTERM信号来终止它们。

系统在启动和终止的时候也是调用乐/etc/inin.d/mail start|stop.如果该

系统在verbose模式下运行,下面的信息回显示,证明sendmail已经启动乐.

Mailer daemons: sendmail

/usr/etc/configmail

/usr/etc/configmail脚本提供了在命令行输入和sendmail.cf文件之间的接口.

它把宏和类定义从管道输入到sendmail.params文件中去.该脚本简化了sendmail

设置.

configmail脚本允许用户更改和设置几个sendmail参数.这些参数相当与sendmail

.cf中的宏和类. 你可以验证当前的参数设定,设置特定参数,运行一个快速设置

命令,和得到一些在线帮助。configmail把你做的改变保存在senmail.params

文件中。sendmail在每次启动的时候都要读去该文件。

s清华水木sendmail教程(2)

sendmail工作原理

明白sendmail工作原理需要弄懂一大堆东东,象守护进程,脚本,文件,以及命令.

下面介绍一下这些东东.

sendmail守护进程

如果要sendmail处理发送来的信件,必须有一个守护进程在运行。sendmail守护

进程就是带有特殊标志位的sendmail程序。这个守护进程是被/etc/init.d/mail

脚本在系统启动的时候自动启动的.在此脚本中用来启动sendmail的命令如下:

/usr/lib/sendmail -bd -q15m

-bd标志是使sendmail作为一个守护程序运行。-q15m标志使sendmail fork出一个

子守护进程来每隔15分钟处理一次消息队列.

sendmail脚本

在一般的系统中(象我用的IRIS 6.3)随sendmail提供的有两个脚本来完成一些

通用的功能。尽量去使用这两个脚本来完成你的任务,因为它们是经过测试可以

正确执行的。

/etc/init.d/mail

用户很少需要去手动启动或者停止sendmail.只有在当要改变设置等情况下,你

必须终止所有运行的sendmail进程,"冻结(refreeze)"设置文件,然后重新启动

sendmail以使新的设置生效。要简化该工作,系统提供了一个脚本/etc/init.d/

mail.这个脚本只有一个参数,start|stop,用来启动或者关闭sendmail进程。

要停止sendmail进程,用以下命令:

/etc/init.d/mail stop

但你必须是root才可以有这个权限。如果用start参数来启动/etc/init.d/mail,

它检查sendmail相关文件和目录的权限和存在与否。如果需要的东东,例如

/var/spool/mqueue目录不见乐,这个脚本就创建它。而对其他一些复杂的

东东,例如/etc/aliases,该脚本就退出并给出一个提示。

当/etc/init.d/mail stop 命令被执行的时候,它向所有的sendmail进程发出

SIGTERM信号来终止它们。

系统在启动和终止的时候也是调用乐/etc/inin.d/mail start|stop.如果该

系统在verbose模式下运行,下面的信息回显示,证明sendmail已经启动乐.

Mailer daemons: sendmail

/usr/etc/configmail

/usr/etc/configmail脚本提供了在命令行输入和sendmail.cf文件之间的接口.

它把宏和类定义从管道输入到sendmail.params文件中去.该脚本简化了sendmail

设置.

configmail脚本允许用户更改和设置几个sendmail参数.这些参数相当与sendmail

.cf中的宏和类. 你可以验证当前的参数设定,设置特定参数,运行一个快速设置

命令,和得到一些在线帮助。configmail把你做的改变保存在senmail.params

文件中。sendmail在每次启动的时候都要读去该文件。

sendmail相关的文件和目录

sendmail的设置文件和目录是

/etc/sendmail.cf

/etc/sendmail.fc

/etc/sendmail.hf

/etc/sendmail.st

/etc/aliases

/var/spool/mqueue

/var/mail

/etc/sendmail.cf

sendmail程序的核心是senmail设置文件/etc/sendmail.cf.该文件是一个ASCII

文件,包含了绝大多数设置信息.sendmail在每次启动的时候都要读取它.它包括

选项,头定义,发送程序定义,信任用户定义,消息优先级别,重写地址规则,宏定义

和类定义.

作为一个mail管理员,你必须了解要改变sendmail.cf的哪些宏和变量.sendmail.cf

文件利用sendmail可以从管道读取宏和类定义的能力简化了senmail设置过程。

该文件接受sendmail.params和/usr/etc/configmail脚本产生的命令行输入并

把输入合并到相应的宏和类。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航