热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何管理sendmail邮件队列

1、队列文件通常存放在/var/spool/mqueue下面,每个待发送的邮件由几个文件构成,例如,我们可以看到下面的目录文件列表:[root@mailmqueue]#lsdfRAA27175xfAAA00733xfBAA00819xfEAA32763xfXAA00706qfRAA27175xfAAA00784xfDA
1、队列文件通常存放在/var/spool/mqueue下面,每个待发送的邮件由几个文件构成,例如,我们可以看到下面的目录文件列表: [root@mail mqueue]# ls
dfRAA27175 xfAAA00733 xfBAA00819 xfEAA32763 xfXAA00706
qfRAA27175 xfAAA00784 xfDAA01360 xfFAA01616
文件名字总是由一个两字符的前缀加上一个随机数字。前缀有四钟:
df:邮件内容
qf:邮件头和一些控制信息
xf:一些临时文件
tf:qf文件的临时存储文件

2、可以通过看队列中的qf文件来确定当前队列信息,不过通常都可以用mailq程序来完成对队列状态的查询:
root@mail mqueue]# mailq
Mail Queue (1 request)
--Q-ID-- --Size-- -----Q-Time----- ------------Sender/Recipient----------- -
RAA27175 22429 Fri Feb 25 17:34
: deferred)
×××@×××.net
这表示队列中目前只有一封信,由zhangfl发出,[url=mailto:收信人是×××@×××.net]收信人是×××@×××.net]。

3、查看队列:
mailq
# 查看MTA队列的滞留情况(等价于sendmail -bp)
mailq -Ac # 查看MSP队列的滞留情况(等价于sendmail -bp -Ac)
强制送信:
/usr/sbin/sendmail -q -v
# 对MTA队列强制送信
/usr/sbin/sendmail -q -v -Ac
# 对MSP队列强制送信
注:如执行完以上命令后,队列中仍然还有很多邮件,这时需要多次执行以上命令,直到邮件发送完为止。
参数说明:
-q 立即处理队列的内容.
-v 显示进度详细信息
-Ac 读取MSP队列(默认是读取MTA队列)

4、sendmail接受到的信件在用户取走之前将暂时存储在/var/spool/mail目录下面,存储的方法非常简单,就是每个有待读邮件的用户一个文件:
[root@mail spool]# ls -l /var/spool/mail |more
total 19364
-rw-rw---- 1 anyi mail 7559035 Feb 28 22:04 anyi
-rw-rw---- 1 baixuan mail 514 Nov 7 01:32 baixuan
-rw-rw---- 1 cwc mail 515 Feb 28 08:35 cwc
如果一个用户有多封电子邮件,那么这些邮件就被简单地连接在一起构成一个大文件(所以你会看到非常巨大的邮件文件)。

5、如果你面对的是一个很庞大的邮件服务系统,有时会在某个邮件队列中拥塞太多的消息,你可能想把这个队列暂停并且在网络空闲的时候再发送,暂停一个邮件队列的办法非常简单,就是将/var/spool/mqueue目录移走:
killall sendmail
mv /var/spool/mqueue /var/spool/mqueue.stop
mkdir /var/spool/mqueue
sendmail Cbd
当网络空闲的时候,可以用-oQ参数立即处理拥塞的队列:
sendmail CoQ/var/spool/mqueue.stop Cq

6、设置邮件队列间隔
守护程序启动时 -q 标志的值确定 sendmail 守护程序处理邮件队列的时间间隔。
在 Red Hat 的预设条件中,在 /var/spool/mqueue 当中的信件会每隔 60 分钟由 Sendmail 尝试重新传送一次到目的地去!这个尝试的时间是可以改变的!可以利用 sendmail 的指令或者直接修改 /etc/sysconfig/sendmail 里面的 『QUEUE=时间』来修订!例如,如果你想要让 Sendmail 每隔 30 分钟就帮你尝试传送 /var/spool/mqueue 里面的未寄出的信件时,那么就将 /etc/sysconfig/sendmail 这个档案里面的『QUEUE=1h 』改成『QUEUE=30m 』即可! 
这些变化会在下一次系统重新启动时生效。如果您想让这些变化立刻生效,请停止并重新启动 sendmail 守护程序,指定新的 -q 标志值。更多相关信息,请参阅停止 sendmail 守护程序和启动 sendmail 守护程序。

7、在sendmail里如何控制邮箱大小
在 /etc/sendmail.cf 中设置 
找这个字段 ,把前面的注释“#”去掉,再把“0”修改为你想要控制的邮件大小,比如10M,这个文件中,是以字节为单位的。
# maximum message size 
#O MaxMessageSize=1000000

8、要察看邮件系统的状态,使用mailstats命令。

推荐阅读
  • 本文探讨了程序员这一职业的本质,认为他们是专注于问题解决的专业人士。文章深入分析了他们的日常工作状态、个人品质以及面对挑战时的态度,强调了编程不仅是一项技术活动,更是个人成长和精神修炼的过程。 ... [详细]
  • TCP协议中的可靠传输机制分析
    本文深入探讨了TCP协议如何通过滑动窗口和超时重传来确保数据传输的可靠性,同时介绍了流量控制和拥塞控制的基本原理及其在实际网络通信中的应用。 ... [详细]
  • 解决Win10系统显示模糊问题的方法
    Windows 10作为一款深受用户喜爱的操作系统,提供了丰富的个性化设置选项,让每位用户都能根据个人偏好定制系统界面。然而,在进行个性化设置的过程中,有时会出现显示模糊的情况,影响用户体验。本文将详细介绍如何有效解决Win10系统显示模糊的问题。 ... [详细]
  • 拨打电话时遇到‘正在通话’或无人接听的情况解析及解决方法
    当您尝试联系他人时,可能会遇到电话提示‘正在通话’或是虽然接通但无人应答的情况。本文将详细解释可能的原因,并提供相应的解决策略。 ... [详细]
  • 本文详细介绍了在Windows系统中如何配置Nginx以实现高效的缓存加速功能,包括关键的配置文件设置和示例代码。 ... [详细]
  • 如何在PyCharm中配置Python脚本的默认模板
    本文介绍如何在PyCharm中设置Python脚本的默认模板,以便每次创建新的.py文件时自动填充预设内容,提高开发效率。 ... [详细]
  • 当需要确保对象的状态在创建后不可更改时,使用记录(Record)类型是一个理想的选择。本文探讨了如何通过记录类型实现对象的不可变性,并提供了一个简单的示例来说明其用法。 ... [详细]
  • 本文详细介绍了FLV播放器的构建过程,包括如何解析FLV标签并将这些标签传递给解码器,以及如何在Qt环境中注册共享指针的信号和槽机制。 ... [详细]
  • 团支部的概念及其职能
    本文详细介绍了团支部的基本概念、组织结构以及其在共青团体系中的重要职能。 ... [详细]
  • 在开发一个网页音乐播放器时遇到问题,需要从不同源读取MP3文件的ID3标签信息,包括流派、歌手和歌曲名称等。尝试使用PHP未果后转而考虑使用JavaScript进行跨域读取,但不清楚具体配置方法,寻求技术指导。 ... [详细]
  • 探索《冯诺依曼传》:天才与时代的交响
    本文深入探讨了《冯诺依曼传》,通过分析这位20世纪杰出科学家的生平,揭示其对现代科技及理论科学的深远影响。 ... [详细]
  • 本文详细介绍了JQuery Mobile框架中特有的事件和方法,帮助开发者更好地理解和应用这些特性,提升移动Web开发的效率。 ... [详细]
  • CRZ.im:一款极简的网址缩短服务及其安装指南
    本文介绍了一款名为CRZ.im的极简网址缩短服务,该服务采用PHP和SQLite开发,体积小巧,约10KB。本文还提供了详细的安装步骤,包括环境配置、域名解析及Nginx伪静态设置。 ... [详细]
  • 我的读书清单(持续更新)201705311.《一千零一夜》2006(四五年级)2.《中华上下五千年》2008(初一)3.《鲁滨孙漂流记》2008(初二)4.《钢铁是怎样炼成的》20 ... [详细]
  • 随着市场需求的增长,各行业对兼职人员的需求日益增加。无论是本地生活服务还是专业技能提供,兼职APP成为了连接供需双方的重要桥梁,有效地提升了信息透明度和服务效率。 ... [详细]
author-avatar
张嘎777_282
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有