1
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN"
2
"http://www.w3.org/TR/html4/loose.dtd">
4
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
5
<title> Postfix manual - oqmgr(8) </title>
10
oqmgr - old Postfix queue manager
13
<b>oqmgr</b> [generic Postfix daemon options]
16
The <b>oqmgr</b> daemon awaits the arrival of incoming mail and
17
arranges for its delivery via Postfix delivery processes.
18
The actual mail routing strategy is delegated to the <a href="trivial-rewrite.8.html"><b>triv-</b></a>
19
<a href="trivial-rewrite.8.html"><b>ial-rewrite</b>(8)</a> daemon. This program expects to be run
20
from the <a href="master.8.html"><b>master</b>(8)</a> process manager.
22
Mail addressed to the local <b>double-bounce</b> address is
23
logged and discarded. This stops potential loops caused
24
by undeliverable bounce notifications.
27
The <b>oqmgr</b> daemon maintains the following queues:
30
Inbound mail from the network, or mail picked up by
31
the local <b>pickup</b> agent from the <b>maildrop</b> directory.
33
<b>active</b> Messages that the queue manager has opened for
34
delivery. Only a limited number of messages is
35
allowed to enter the <b>active</b> queue (leaky bucket
36
strategy, for a fixed delivery rate).
39
Mail that could not be delivered upon the first
40
attempt. The queue manager implements exponential
41
backoff by doubling the time between delivery
45
Unreadable or damaged queue files are moved here
48
<b>hold</b> Messages that are kept "on hold" are kept here
49
until someone sets them free.
51
<b>DELIVERY STATUS REPORTS</b>
52
The <b>oqmgr</b> daemon keeps an eye on per-message delivery sta-
53
tus reports in the following directories. Each status
54
report file has the same name as the corresponding message
57
<b>bounce</b> Per-recipient status information about why mail is
58
bounced. These files are maintained by the
59
<a href="bounce.8.html"><b>bounce</b>(8)</a> daemon.
61
<b>defer</b> Per-recipient status information about why mail is
62
delayed. These files are maintained by the
63
<a href="defer.8.html"><b>defer</b>(8)</a> daemon.
65
<b>trace</b> Per-recipient status information as requested with
66
the Postfix "<b>sendmail -v</b>" or "<b>sendmail -bv</b>" com-
67
mand. These files are maintained by the <a href="trace.8.html"><b>trace</b>(8)</a>
70
The <b>oqmgr</b> daemon is responsible for asking the <a href="bounce.8.html"><b>bounce</b>(8)</a>,
71
<a href="defer.8.html"><b>defer</b>(8)</a> or <a href="trace.8.html"><b>trace</b>(8)</a> daemons to send delivery reports.
74
The queue manager implements a variety of strategies for
75
either opening queue files (input) or for message delivery
79
This strategy limits the number of messages in the
80
<b>active</b> queue and prevents the queue manager from
81
running out of memory under heavy load.
84
When the <b>active</b> queue has room, the queue manager
85
takes one message from the <a href="QSHAPE_README.html#incoming_queue"><b>incoming</b> queue</a> and one
86
from the <b>deferred</b> queue. This prevents a large mail
87
backlog from blocking the delivery of new mail.
90
This strategy eliminates "thundering herd" problems
91
by slowly adjusting the number of parallel deliver-
92
ies to the same destination.
95
The queue manager sorts delivery requests by desti-
96
nation. Round-robin selection prevents one desti-
97
nation from dominating deliveries to other destina-
100
<b>exponential backoff</b>
101
Mail that cannot be delivered upon the first
102
attempt is deferred. The time interval between
103
delivery attempts is doubled after each attempt.
105
<b>destination status cache</b>
106
The queue manager avoids unnecessary delivery
107
attempts by maintaining a short-term, in-memory
108
list of unreachable destinations.
111
On an idle system, the queue manager waits for the arrival
112
of trigger events, or it waits for a timer to go off. A
113
trigger is a one-byte message. Depending on the message
114
received, the queue manager performs one of the following
115
actions (the message is followed by the symbolic constant
116
used internally by the software):
118
<b>D (QMGR_REQ_SCAN_DEFERRED)</b>
119
Start a <a href="QSHAPE_README.html#deferred_queue">deferred queue</a> scan. If a deferred queue
120
scan is already in progress, that scan will be
121
restarted as soon as it finishes.
123
<b>I (QMGR_REQ_SCAN_INCOMING)</b>
124
Start an <a href="QSHAPE_README.html#incoming_queue">incoming queue</a> scan. If an incoming queue
125
scan is already in progress, that scan will be
126
restarted as soon as it finishes.
128
<b>A (QMGR_REQ_SCAN_ALL)</b>
129
Ignore <a href="QSHAPE_README.html#deferred_queue">deferred queue</a> file time stamps. The request
130
affects the next <a href="QSHAPE_README.html#deferred_queue">deferred queue</a> scan.
132
<b>F (QMGR_REQ_FLUSH_DEAD)</b>
133
Purge all information about dead transports and
136
<b>W (TRIGGER_REQ_WAKEUP)</b>
137
Wakeup call, This is used by the master server to
138
instantiate servers that should not go away for-
139
ever. The action is to start an <a href="QSHAPE_README.html#incoming_queue">incoming queue</a>
142
The <b>oqmgr</b> daemon reads an entire buffer worth of triggers.
143
Multiple identical trigger requests are collapsed into
144
one, and trigger requests are sorted so that <b>A</b> and <b>F</b> pre-
145
cede <b>D</b> and <b>I</b>. Thus, in order to force a <a href="QSHAPE_README.html#deferred_queue">deferred queue</a>
146
run, one would request <b>A F D</b>; in order to notify the queue
147
manager of the arrival of new mail one would request <b>I</b>.
150
None. The <b>oqmgr</b> daemon does not interact with the outside
154
The <b>oqmgr</b> daemon is not security sensitive. It reads sin-
155
gle-character messages from untrusted local users, and
156
thus may be susceptible to denial of service attacks. The
157
<b>oqmgr</b> daemon does not talk to the outside world, and it
158
can be run at fixed low privilege in a chrooted environ-
162
Problems and transactions are logged to the syslog daemon.
163
Corrupted message files are saved to the <b>corrupt</b> queue for
166
Depending on the setting of the <b><a href="postconf.5.html#notify_classes">notify_classes</a></b> parameter,
167
the postmaster is notified of bounces and of other trou-
171
A single queue manager process has to compete for disk
172
access with multiple front-end processes such as <b>smtpd</b>. A
173
sudden burst of inbound mail can negatively impact out-
174
bound delivery rates.
176
<b>CONFIGURATION PARAMETERS</b>
177
Changes to <b>main.cf</b> are not picked up automatically, as
178
<a href="qmgr.8.html">oqmgr(8)</a> processes are persistent. Use the command "<b>post-</b>
179
<b>fix reload</b>" after a configuration change.
181
The text below provides only a parameter summary. See
182
<a href="postconf.5.html">postconf(5)</a> for more details including examples.
184
In the text below, <i>transport</i> is the first field in a <b>mas-</b>
187
<b>COMPATIBILITY CONTROLS</b>
188
<b><a href="postconf.5.html#allow_min_user">allow_min_user</a> (no)</b>
189
Allow a recipient address to have `-' as the first
192
<b>ACTIVE QUEUE CONTROLS</b>
193
<b><a href="postconf.5.html#qmgr_clog_warn_time">qmgr_clog_warn_time</a> (300s)</b>
194
The minimal delay between warnings that a specific
195
destination is clogging up the Postfix active
198
<b><a href="postconf.5.html#qmgr_message_active_limit">qmgr_message_active_limit</a> (20000)</b>
199
The maximal number of messages in the <a href="QSHAPE_README.html#active_queue">active queue</a>.
201
<b><a href="postconf.5.html#qmgr_message_recipient_limit">qmgr_message_recipient_limit</a> (20000)</b>
202
The maximal number of recipients held in memory by
203
the Postfix queue manager, and the maximal size of
204
the size of the short-term, in-memory "dead" desti-
207
<b>DELIVERY CONCURRENCY CONTROLS</b>
208
<b><a href="postconf.5.html#qmgr_fudge_factor">qmgr_fudge_factor</a> (100)</b>
209
Obsolete feature: the percentage of delivery
210
resources that a busy mail system will use up for
211
delivery of a large mailing list message.
213
<b><a href="postconf.5.html#initial_destination_concurrency">initial_destination_concurrency</a> (5)</b>
214
The initial per-destination concurrency level for
215
parallel delivery to the same destination.
217
<b><a href="postconf.5.html#default_destination_concurrency_limit">default_destination_concurrency_limit</a> (20)</b>
218
The default maximal number of parallel deliveries
219
to the same destination.
221
<i>transport</i><b>_destination_concurrency_limit</b>
222
Idem, for delivery via the named message <i>transport</i>.
224
<b>RECIPIENT SCHEDULING CONTROLS</b>
225
<b><a href="postconf.5.html#default_destination_recipient_limit">default_destination_recipient_limit</a> (50)</b>
226
The default maximal number of recipients per mes-
229
<i>transport</i><b>_destination_recipient_limit</b>
230
Idem, for delivery via the named message <i>transport</i>.
232
<b>OTHER RESOURCE AND RATE CONTROLS</b>
233
<b><a href="postconf.5.html#minimal_backoff_time">minimal_backoff_time</a> (1000s)</b>
234
The minimal time between attempts to deliver a
237
<b><a href="postconf.5.html#maximal_backoff_time">maximal_backoff_time</a> (4000s)</b>
238
The maximal time between attempts to deliver a
241
<b><a href="postconf.5.html#maximal_queue_lifetime">maximal_queue_lifetime</a> (5d)</b>
242
The maximal time a message is queued before it is
243
sent back as undeliverable.
245
<b><a href="postconf.5.html#queue_run_delay">queue_run_delay</a> (1000s)</b>
246
The time between <a href="QSHAPE_README.html#deferred_queue">deferred queue</a> scans by the queue
249
<b><a href="postconf.5.html#transport_retry_time">transport_retry_time</a> (60s)</b>
250
The time between attempts by the Postfix queue man-
251
ager to contact a malfunctioning message delivery
254
Available in Postfix version 2.1 and later:
256
<b><a href="postconf.5.html#bounce_queue_lifetime">bounce_queue_lifetime</a> (5d)</b>
257
The maximal time a bounce message is queued before
258
it is considered undeliverable.
260
<b>MISCELLANEOUS CONTROLS</b>
261
<b><a href="postconf.5.html#config_directory">config_directory</a> (see 'postconf -d' output)</b>
262
The default location of the Postfix main.cf and
263
master.cf configuration files.
265
<b><a href="postconf.5.html#daemon_timeout">daemon_timeout</a> (18000s)</b>
266
How much time a Postfix daemon process may take to
267
handle a request before it is terminated by a
268
built-in watchdog timer.
270
<b><a href="postconf.5.html#defer_transports">defer_transports</a> (empty)</b>
271
The names of message delivery transports that
272
should not be delivered to unless someone issues
273
"<b>sendmail -q</b>" or equivalent.
275
<b><a href="postconf.5.html#helpful_warnings">helpful_warnings</a> (yes)</b>
276
Log warnings about problematic configuration set-
277
tings, and provide helpful suggestions.
279
<b><a href="postconf.5.html#ipc_timeout">ipc_timeout</a> (3600s)</b>
280
The time limit for sending or receiving information
281
over an internal communication channel.
283
<b><a href="postconf.5.html#process_id">process_id</a> (read-only)</b>
284
The process ID of a Postfix command or daemon pro-
287
<b><a href="postconf.5.html#process_name">process_name</a> (read-only)</b>
288
The process name of a Postfix command or daemon
291
<b><a href="postconf.5.html#queue_directory">queue_directory</a> (see 'postconf -d' output)</b>
292
The location of the Postfix top-level queue direc-
295
<b><a href="postconf.5.html#syslog_facility">syslog_facility</a> (mail)</b>
296
The syslog facility of Postfix logging.
298
<b><a href="postconf.5.html#syslog_name">syslog_name</a> (postfix)</b>
299
The mail system name that is prepended to the pro-
300
cess name in syslog records, so that "smtpd"
301
becomes, for example, "postfix/smtpd".
304
/var/spool/postfix/incoming, <a href="QSHAPE_README.html#incoming_queue">incoming queue</a>
305
/var/spool/postfix/active, <a href="QSHAPE_README.html#active_queue">active queue</a>
306
/var/spool/postfix/deferred, <a href="QSHAPE_README.html#deferred_queue">deferred queue</a>
307
/var/spool/postfix/bounce, non-delivery status
308
/var/spool/postfix/defer, non-delivery status
309
/var/spool/postfix/trace, delivery status
312
<a href="trivial-rewrite.8.html">trivial-rewrite(8)</a>, address routing
313
<a href="bounce.8.html">bounce(8)</a>, delivery status reports
314
<a href="postconf.5.html">postconf(5)</a>, configuration parameters
315
<a href="master.8.html">master(8)</a>, process manager
316
syslogd(8) system logging
319
<a href="QSHAPE_README.html">QSHAPE_README</a>, Postfix queue analysis
322
The Secure Mailer license must be distributed with this
327
IBM T.J. Watson Research
329
Yorktown Heights, NY 10598, USA
332
</pre> </body> </html>