当前位置:Linux教程 - Linux - 清华水木sendmail教程(1)

清华水木sendmail教程(1)

/etc/sendmail.fc
sendmail.fc文件是一个冻结(frozen)的设置文件.一个冻结的设置文件就是当
设置文件在被读取的时候sendmail来存放数据的一个镜像区域.sendmail.fc不是
默认产生的.你可以用touch命令来产生该文件.在sendmail.fc文件产生之后,它
被用在/etc/sendmail.cf的场合.这个过程加快启动速度。
所有对sendmail的宏和类的修改都应当被反映到sendmail.cf文件上。
虽然如此,如果/etc/sendmail.fc文件存在,对它的改变不能立刻反映出来直到
你重新rebuild /etc/sendmail.fc. /etc/init.d/mail脚本可以自动rebuild
冻结的设置文件(如果该文件存在).推荐使用mail脚本来重建senmail.fc文件.
如果要手动重建该文件,命令是:
/usr/lib/sendmail -bz

/etc/sendmail.hf
该文件是Simple Mail Transfer Protocol (SMTP)的帮助文件.它包括一些
SMTP命令的简单信息.通常我们用telnet 连接到25号端口上,看到的就是这个
文件中的一些消息。

/etc/sendmail.st
该文件使用来统计和sendmail相关的信息。这个文件也不是随系统带的.
你也可以用touch命令来创建它.如果该文件已经存在,sendmail自动将相关
的统计数据更新到该文件中.

/etc/aliases
该文件包含sendmail程序所用到的别名数据库的文本形式.别名数据库包括
本地收信者的别名.例如,下面的别名就把发送到本地用户jd的mail发送到
johndoe@company.com上去:
jd:johndoe@company.com
当sendmail启动的时候,它自动处理别名文件到/etc/aliases.dir和/etc
/aliases.pag.这两个文件是DBM格式的别名数据库文件.DBM格式改善了
sendmail的性能。
在更改别名数据库文件之后必须要运行newaliases程序。

/var/spool/mqueue
/var/spool/mqueue是邮件队列临时存放的目录./var/spool/mqueue下有不同的
队列,消息被存放在不同的队列中.消息队列文件有以下的形式:
qf* - 消息队列控制文件
df* - 数据文件
tf* - 临时文件
nf* - 每个用户对应的消息队列
xf* - 当前会话过程的transcript文件
一般来说,sendmail守护子进程周期性的处理此队列,尝试发送每个消息.
/etc/init.d/mail脚本启动sendmail进程使它每15分钟fork出一个子进程
来来处理这个mail队列.每次sendmail处理这个队列的时候,它就读取此队列
并排序,然后试图依次运行各个任务。

/var/mail
该目录存放所有受到的邮件.每个本地的用户都会从/var/mail目录下的一个文件
清华水木sendmail(1)
/etc/sendmail.fc
sendmail.fc文件是一个冻结(frozen)的设置文件.一个冻结的设置文件就是当
设置文件在被读取的时候sendmail来存放数据的一个镜像区域.sendmail.fc不是
默认产生的.你可以用touch命令来产生该文件.在sendmail.fc文件产生之后,它
被用在/etc/sendmail.cf的场合.这个过程加快启动速度。
所有对sendmail的宏和类的修改都应当被反映到sendmail.cf文件上。
虽然如此,如果/etc/sendmail.fc文件存在,对它的改变不能立刻反映出来直到
你重新rebuild /etc/sendmail.fc. /etc/init.d/mail脚本可以自动rebuild
冻结的设置文件(如果该文件存在).推荐使用mail脚本来重建senmail.fc文件.
如果要手动重建该文件,命令是:
/usr/lib/sendmail -bz

/etc/sendmail.hf
该文件是Simple Mail Transfer Protocol (SMTP)的帮助文件.它包括一些
SMTP命令的简单信息.通常我们用telnet 连接到25号端口上,看到的就是这个
文件中的一些消息。

/etc/sendmail.st
该文件使用来统计和sendmail相关的信息。这个文件也不是随系统带的.
你也可以用touch命令来创建它.如果该文件已经存在,sendmail自动将相关
的统计数据更新到该文件中.

/etc/aliases
该文件包含sendmail程序所用到的别名数据库的文本形式.别名数据库包括
本地收信者的别名.例如,下面的别名就把发送到本地用户jd的mail发送到
johndoe@company.com上去:
jd:johndoe@company.com
当sendmail启动的时候,它自动处理别名文件到/etc/aliases.dir和/etc
/aliases.pag.这两个文件是DBM格式的别名数据库文件.DBM格式改善了
sendmail的性能。
在更改别名数据库文件之后必须要运行newaliases程序。

/var/spool/mqueue
/var/spool/mqueue是邮件队列临时存放的目录./var/spool/mqueue下有不同的
队列,消息被存放在不同的队列中.消息队列文件有以下的形式:
qf* - 消息队列控制文件
df* - 数据文件
tf* - 临时文件
nf* - 每个用户对应的消息队列
xf* - 当前会话过程的transcript文件
一般来说,sendmail守护子进程周期性的处理此队列,尝试发送每个消息.
/etc/init.d/mail脚本启动sendmail进程使它每15分钟fork出一个子进程
来来处理这个mail队列.每次sendmail处理这个队列的时候,它就读取此队列
并排序,然后试图依次运行各个任务。

/var/mail
该目录存放所有受到的邮件.每个本地的用户都会从/var/mail目录下的一个文件
中收到自己的邮件.例如,guest用户从/var/mail/guest文件中收取邮件。

sendmail命令
这一节要讲述的是:
sendmail
newaliases
mailq

sendmail
sendmail是实现sendmail路由和转发服务的程序.作为一个程序,它在命令行
可以有很多标志可以被设置用来构件sendmail环境。可以用
man 1 sendmail
得到更详细的介绍。

/usr/bsd/newaliases
newaliases是用来更新DBM格式的别名数据库的程序。在别名文件被改动之后
必须运行此程序.否则,更改过的别名没有记录在DBM别名数据库中,也就不能为
sendmail所知道.

/usr/bin/mailq
此命令打印当前消息队列列表。