Postfix 删除队列中的邮件

#man  postsuper

NAME

postsuper - Postfix superintendent

SYNOPSIS

postsuper [-psv] [-c config_dir] [-d queue_id]

[-h queue_id] [-H queue_id]

[-r queue_id] [directory ...]

 -d queue_id

Delete  one  message  with  the named queue ID from the named mail queue(s) (default: hold, incoming, active and

deferred).

If a queue_id of - is specified, the program reads queue IDs from standard input. For  example,  to  delete  all

mail with exactly one recipient [email protected]:

mailq | tail +2 | grep -v ’^ *(’ | awk  ′BEGIN { RS = "" }

# $7=sender, $8=recipient1, $9=recipient2

{ if ($8 == "[email protected]" && $9 == "")

print $1 }

′ | tr -d ’*!’ | postsuper -d -

Specify  "-d  ALL"  to  remove  all  messages;  for example, specify "-d ALL deferred" to delete all mail in the

deferred queue.  As a safety measure, the word ALL must be specified in upper case.

Warning: Postfix queue IDs are reused.  There is a very small possibility that postsuper deletes the wrong  mes-

sage file when it is executed while the Postfix mail system is delivering mail.

The scenario is as follows:

1)     The  Postfix  queue  manager deletes the message that postsuper(1) is asked to delete, because Postfix is

finished with the message (it is delivered, or it is returned to the sender).

2)     New mail arrives, and the new message is given the same queue ID as the message that postsuper(1) is sup-

posed  to delete.  The probability for reusing a deleted queue ID is about 1 in 2**15 (the number of dif-

ferent microsecond values that the system clock can distinguish within a second).

3)     postsuper(1) deletes the new message, instead of the old message that it should have deleted.

Postfix 删除队列中的邮件

时间: 2024-11-05 21:44:11

Postfix 删除队列中的邮件的相关文章

3.7 队列中取最大值操作问题

问题: 假设有这样一个拥有3个操作的队列: 1. EnQueue(v): 将v加入队列中 2. DeQueue(): 使队列中的队首元素删除并返回此元素 3. MaxElement: 返回队列中的最大元素 设计一种数据结构和算法,让MaxElement操作的时间复杂度尽可能地低. 方法:用两个栈来模拟队列 在代码中,maxStackItemIndex代表栈中最大的数的下标 link2NextMaxItem[index]表示当前index这个下标代表的数字(当前是最大的)如果没有的话,那么最大的那

小猪的数据结构辅助教程——3.1 栈与队列中的顺序栈

小猪的数据结构辅助教程--3.1 栈与队列中的顺序栈 标签(空格分隔): 数据结构 本节学习路线图与学习要点 学习要点 1.栈与队列的介绍,栈顶,栈底,入栈,出栈的概念 2.熟悉顺序栈的特点以及存储结构 3.掌握顺序栈的基本操作的实现逻辑 4.掌握顺序栈的经典例子:进制变换的实现逻辑 1.栈与队列的概念: 嗯,本节要进行讲解的就是栈 + 顺序结构 = 顺序栈! 可能大家对栈的概念还是很模糊,我们找个常见的东西来拟物化~ 不知道大家喜欢吃零食不--"桶装薯片"就可以用来演示栈! 生产的时

队列中取最大值操作问题

问题: 假设有这样一个拥有3个操作的队列: 1. EnQueue(v): 将v加入队列中 2. DeQueue(): 使队列中的队首元素删除并返回此元素 3. MaxElement: 返回队列中的最大元素 设计一种数据结构和算法,让MaxElement操作的时间复杂度尽可能地低. 思路: (1)用两个栈设计一个新的数据类型(数据类型定义为MyStack),其中一个栈用来存放数据,另一个栈用来存放最大值, 当插入数据时,第一个栈接受数据进行入栈操作,第二栈首先判断一下栈顶元素和插入元素的大小,如果

小猪的数据结构辅助教程——3.2 栈与队列中的链栈

小猪的数据结构辅助教程--3.2 栈与队列中的链栈 标签(空格分隔): 数据结构 1.本节引言: 嗯,本节没有学习路线图哈,因为栈我们一般都用的是顺序栈,链栈还是顺带提一提吧, 栈因为只是栈顶来做插入和删除操作,所以较好的方法是将栈顶放在单链表的头部,栈顶 指针与单链表的头指针合二为一~所以本节只是讲下链栈的存储结构和基本操作! 2.链栈的存储结构与示意图 存储结构: typedef struct StackNode { SElemType data; //存放的数据 struct StackN

<<编程之美>> -- 队列中取最大值操作的问题

不得不说编程之美是一本好书,虽然很多题目在做acm中的过程中遇到过,不过还是有很多值得思考的地方 这是今天在编程之美上看到的一个问题,对于栈转化成队列的一个思考 平时都太过依赖c++内函数库中的栈和队列,但是对于他们的扩展我们还是应该自己进行手写栈和队列来实现更简单的算法 题目大意: 假设有这样一个拥有3个操作的队列: 1. EnQueue(v) : 将 v 加入队列 2. DeQueue: 使队列中队首元素删除并返回此元素 3.MaxElement: 返回队列中的最大元素 设计一种数据结构和算

编程之美之队列中取最大值操作

问题: 假设有这样一个拥有3个操作的队列: 1. EnQueue(v): 将v加入队列中 2. DeQueue(): 使队列中的队首元素删除并返回此元素 3. MaxElement: 返回队列中的最大元素 设计一种数据结构和算法,让MaxElement操作的时间复杂度尽可能地低. #include<iostream> #include<limits.h> using namespace std; class Stack { public: Stack() { stackTop =

EXT3文件系统误删除导致文件系统中的邮件丢失恢复方法

一.故障描述 由8块盘组成的RAID5, 上层是EXT3文件系统,由于误删除导致文件系统中的邮件丢失 二.镜像磁盘为防止数据恢复过程中由于误操作对原始磁盘造成二次破坏, 使用winhex软件为每块磁盘做镜像, 以后所有的数据恢复操作都在镜像盘上进行, 不会对原始磁盘造成影响镜像结果如下:图一 三.组建RAID通过分析数据在硬盘中分布的规律, 获取RAID类型, RAID条带的大小,以及每块磁盘的顺序.根据分析结果使用UFS组建RAID.结果如下:图二 四.导出目标分区 从组建好的RAID中可以看

超大批量删除redis中无用key+配置

目前线上一个单实例redis中无用的key太多,决定删除一部分. 1.删除指定用户的key,使用redis的pipeline 根据一定条件把需要删除的用户统计出来,放到一个表里面,表为 del_user(int user_id),rows大约在1千万. 要删除的key为 "login:%s" %s匹配 user_id . 写sql文如下:把sql文保存在一个文件里面,命名为 1.sql SELECT CONCAT( "*2\r\n", '$3\r\n',    'D

如何在应用中通过邮件输入和输出数据

这篇文章还可以在这里找到 英语 Load Attachments In Your App! 很多开发者都希望能够通过电子邮件分享他们的应用数据.这对用户用户之间以及设备之间的数据传输来说是一个很方便的方法--它甚至可以为你带来一些新的用户.幸运的是,在iPhone应用开发里这是很容易实现的 -- 你只需要在Info.plist里设置几个key,并且处理几个回传函数使控制系统可以通过URL引入数据来开启应用.我们将会在这篇教程里讲解这些是如何实现的.我们将会由the Scary Bugs项目开始讲