1<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN" 2 "http://www.w3.org/TR/html4/loose.dtd"> 3<html> <head> 4<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 5<link rel='stylesheet' type='text/css' href='postfix-doc.css'> 6<title> Postfix manual - oqmgr(8) </title> 7</head> <body> <pre> 8OQMGR(8) OQMGR(8) 9 10<b>NAME</b> 11 oqmgr - old Postfix queue manager 12 13<b>SYNOPSIS</b> 14 <b>oqmgr</b> [generic Postfix daemon options] 15 16<b>DESCRIPTION</b> 17 The <a href="qmgr.8.html"><b>oqmgr</b>(8)</a> daemon awaits the arrival of incoming mail and arranges 18 for its delivery via Postfix delivery processes. The actual mail rout- 19 ing strategy is delegated to the <a href="trivial-rewrite.8.html"><b>trivial-rewrite</b>(8)</a> daemon. This pro- 20 gram expects to be run from the <a href="master.8.html"><b>master</b>(8)</a> process manager. 21 22 Mail addressed to the local <b>double-bounce</b> address is logged and dis- 23 carded. This stops potential loops caused by undeliverable bounce 24 notifications. 25 26<b>MAIL QUEUES</b> 27 The <a href="qmgr.8.html"><b>oqmgr</b>(8)</a> daemon maintains the following queues: 28 29 <b>incoming</b> 30 Inbound mail from the network, or mail picked up by the local 31 <a href="pickup.8.html"><b>pickup</b>(8)</a> agent from the <b>maildrop</b> directory. 32 33 <b>active</b> Messages that the queue manager has opened for delivery. Only a 34 limited number of messages is allowed to enter the <b>active</b> queue 35 (leaky bucket strategy, for a fixed delivery rate). 36 37 <b>deferred</b> 38 Mail that could not be delivered upon the first attempt. The 39 queue manager implements exponential backoff by doubling the 40 time between delivery attempts. 41 42 <b>corrupt</b> 43 Unreadable or damaged queue files are moved here for inspection. 44 45 <b>hold</b> Messages that are kept "on hold" are kept here until someone 46 sets them free. 47 48<b>DELIVERY STATUS REPORTS</b> 49 The <a href="qmgr.8.html"><b>oqmgr</b>(8)</a> daemon keeps an eye on per-message delivery status reports 50 in the following directories. Each status report file has the same name 51 as the corresponding message file: 52 53 <b>bounce</b> Per-recipient status information about why mail is bounced. 54 These files are maintained by the <a href="bounce.8.html"><b>bounce</b>(8)</a> daemon. 55 56 <b>defer</b> Per-recipient status information about why mail is delayed. 57 These files are maintained by the <a href="defer.8.html"><b>defer</b>(8)</a> daemon. 58 59 <b>trace</b> Per-recipient status information as requested with the Postfix 60 "<b>sendmail -v</b>" or "<b>sendmail -bv</b>" command. These files are main- 61 tained by the <a href="trace.8.html"><b>trace</b>(8)</a> daemon. 62 63 The <a href="qmgr.8.html"><b>oqmgr</b>(8)</a> daemon is responsible for asking the <a href="bounce.8.html"><b>bounce</b>(8)</a>, <a href="defer.8.html"><b>defer</b>(8)</a> 64 or <a href="trace.8.html"><b>trace</b>(8)</a> daemons to send delivery reports. 65 66<b>STRATEGIES</b> 67 The queue manager implements a variety of strategies for either opening 68 queue files (input) or for message delivery (output). 69 70 <b>leaky bucket</b> 71 This strategy limits the number of messages in the <b>active</b> queue 72 and prevents the queue manager from running out of memory under 73 heavy load. 74 75 <b>fairness</b> 76 When the <b>active</b> queue has room, the queue manager takes one mes- 77 sage from the <a href="QSHAPE_README.html#incoming_queue"><b>incoming</b> queue</a> and one from the <b>deferred</b> queue. 78 This prevents a large mail backlog from blocking the delivery of 79 new mail. 80 81 <b>slow start</b> 82 This strategy eliminates "thundering herd" problems by slowly 83 adjusting the number of parallel deliveries to the same destina- 84 tion. 85 86 <b>round robin</b> 87 The queue manager sorts delivery requests by destination. 88 Round-robin selection prevents one destination from dominating 89 deliveries to other destinations. 90 91 <b>exponential backoff</b> 92 Mail that cannot be delivered upon the first attempt is 93 deferred. The time interval between delivery attempts is dou- 94 bled after each attempt. 95 96 <b>destination status cache</b> 97 The queue manager avoids unnecessary delivery attempts by main- 98 taining a short-term, in-memory list of unreachable destina- 99 tions. 100 101<b>TRIGGERS</b> 102 On an idle system, the queue manager waits for the arrival of trigger 103 events, or it waits for a timer to go off. A trigger is a one-byte mes- 104 sage. Depending on the message received, the queue manager performs 105 one of the following actions (the message is followed by the symbolic 106 constant used internally by the software): 107 108 <b>D (QMGR_REQ_SCAN_DEFERRED)</b> 109 Start a <a href="QSHAPE_README.html#deferred_queue">deferred queue</a> scan. If a <a href="QSHAPE_README.html#deferred_queue">deferred queue</a> scan is 110 already in progress, that scan will be restarted as soon as it 111 finishes. 112 113 <b>I (QMGR_REQ_SCAN_INCOMING)</b> 114 Start an <a href="QSHAPE_README.html#incoming_queue">incoming queue</a> scan. If an <a href="QSHAPE_README.html#incoming_queue">incoming queue</a> scan is 115 already in progress, that scan will be restarted as soon as it 116 finishes. 117 118 <b>A (QMGR_REQ_SCAN_ALL)</b> 119 Ignore <a href="QSHAPE_README.html#deferred_queue">deferred queue</a> file time stamps. The request affects the 120 next <a href="QSHAPE_README.html#deferred_queue">deferred queue</a> scan. 121 122 <b>F (QMGR_REQ_FLUSH_DEAD)</b> 123 Purge all information about dead transports and destinations. 124 125 <b>W (TRIGGER_REQ_WAKEUP)</b> 126 Wakeup call, This is used by the master server to instantiate 127 servers that should not go away forever. The action is to start 128 an <a href="QSHAPE_README.html#incoming_queue">incoming queue</a> scan. 129 130 The <a href="qmgr.8.html"><b>oqmgr</b>(8)</a> daemon reads an entire buffer worth of triggers. Multiple 131 identical trigger requests are collapsed into one, and trigger requests 132 are sorted so that <b>A</b> and <b>F</b> precede <b>D</b> and <b>I</b>. Thus, in order to force a 133 <a href="QSHAPE_README.html#deferred_queue">deferred queue</a> run, one would request <b>A F D</b>; in order to notify the 134 queue manager of the arrival of new mail one would request <b>I</b>. 135 136<b>STANDARDS</b> 137 <a href="https://tools.ietf.org/html/rfc3463">RFC 3463</a> (Enhanced status codes) 138 <a href="https://tools.ietf.org/html/rfc3464">RFC 3464</a> (Delivery status notifications) 139 140<b>SECURITY</b> 141 The <a href="qmgr.8.html"><b>oqmgr</b>(8)</a> daemon is not security sensitive. It reads single-charac- 142 ter messages from untrusted local users, and thus may be susceptible to 143 denial of service attacks. The <a href="qmgr.8.html"><b>oqmgr</b>(8)</a> daemon does not talk to the 144 outside world, and it can be run at fixed low privilege in a chrooted 145 environment. 146 147<b>DIAGNOSTICS</b> 148 Problems and transactions are logged to the <b>syslogd</b>(8) or <a href="postlogd.8.html"><b>postlogd</b>(8)</a> 149 daemon. Corrupted message files are saved to the <b>corrupt</b> queue for 150 further inspection. 151 152 Depending on the setting of the <b><a href="postconf.5.html#notify_classes">notify_classes</a></b> parameter, the postmas- 153 ter is notified of bounces and of other trouble. 154 155<b>BUGS</b> 156 A single queue manager process has to compete for disk access with mul- 157 tiple front-end processes such as <a href="cleanup.8.html"><b>cleanup</b>(8)</a>. A sudden burst of inbound 158 mail can negatively impact outbound delivery rates. 159 160<b>CONFIGURATION PARAMETERS</b> 161 Changes to <a href="postconf.5.html"><b>main.cf</b></a> are not picked up automatically, as <a href="qmgr.8.html"><b>oqmgr</b>(8)</a> is a 162 persistent process. Use the command "<b>postfix reload</b>" after a configura- 163 tion change. 164 165 The text below provides only a parameter summary. See <a href="postconf.5.html"><b>postconf</b>(5)</a> for 166 more details including examples. 167 168 In the text below, <i>transport</i> is the first field in a <a href="master.5.html"><b>master.cf</b></a> entry. 169 170<b>COMPATIBILITY CONTROLS</b> 171 Available before Postfix version 2.5: 172 173 <b><a href="postconf.5.html#allow_min_user">allow_min_user</a> (no)</b> 174 Allow a sender or recipient address to have `-' as the first 175 character. 176 177 Available with Postfix version 2.7 and later: 178 179 <b><a href="postconf.5.html#default_filter_nexthop">default_filter_nexthop</a> (empty)</b> 180 When a <a href="postconf.5.html#content_filter">content_filter</a> or FILTER request specifies no explicit 181 next-hop destination, use $<a href="postconf.5.html#default_filter_nexthop">default_filter_nexthop</a> instead; when 182 that value is empty, use the domain in the recipient address. 183 184<b><a href="QSHAPE_README.html#active_queue">ACTIVE QUEUE</a> CONTROLS</b> 185 <b><a href="postconf.5.html#qmgr_clog_warn_time">qmgr_clog_warn_time</a> (300s)</b> 186 The minimal delay between warnings that a specific destination 187 is clogging up the Postfix <a href="QSHAPE_README.html#active_queue">active queue</a>. 188 189 <b><a href="postconf.5.html#qmgr_message_active_limit">qmgr_message_active_limit</a> (20000)</b> 190 The maximal number of messages in the <a href="QSHAPE_README.html#active_queue">active queue</a>. 191 192 <b><a href="postconf.5.html#qmgr_message_recipient_limit">qmgr_message_recipient_limit</a> (20000)</b> 193 The maximal number of recipients held in memory by the Postfix 194 queue manager, and the maximal size of the short-term, in-memory 195 "dead" destination status cache. 196 197<b>DELIVERY CONCURRENCY CONTROLS</b> 198 <b><a href="postconf.5.html#qmgr_fudge_factor">qmgr_fudge_factor</a> (100)</b> 199 Obsolete feature: the percentage of delivery resources that a 200 busy mail system will use up for delivery of a large mailing 201 list message. 202 203 <b><a href="postconf.5.html#initial_destination_concurrency">initial_destination_concurrency</a> (5)</b> 204 The initial per-destination concurrency level for parallel 205 delivery to the same destination. 206 207 <b><a href="postconf.5.html#default_destination_concurrency_limit">default_destination_concurrency_limit</a> (20)</b> 208 The default maximal number of parallel deliveries to the same 209 destination. 210 211 <b><a href="postconf.5.html#transport_destination_concurrency_limit">transport_destination_concurrency_limit</a> ($<a href="postconf.5.html#default_destination_concurrency_limit">default_destination_concur</a>-</b> 212 <b><a href="postconf.5.html#default_destination_concurrency_limit">rency_limit</a>)</b> 213 A transport-specific override for the <a href="postconf.5.html#default_destination_concurrency_limit">default_destination_con</a>- 214 <a href="postconf.5.html#default_destination_concurrency_limit">currency_limit</a> parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> 215 name of the message delivery transport. 216 217 Available in Postfix version 2.5 and later: 218 219 <b><a href="postconf.5.html#transport_initial_destination_concurrency">transport_initial_destination_concurrency</a> ($<a href="postconf.5.html#initial_destination_concurrency">initial_destination_concur</a>-</b> 220 <b><a href="postconf.5.html#initial_destination_concurrency">rency</a>)</b> 221 A transport-specific override for the <a href="postconf.5.html#initial_destination_concurrency">initial_destination_con</a>- 222 <a href="postconf.5.html#initial_destination_concurrency">currency</a> parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name 223 of the message delivery transport. 224 225 <b><a href="postconf.5.html#default_destination_concurrency_failed_cohort_limit">default_destination_concurrency_failed_cohort_limit</a> (1)</b> 226 How many pseudo-cohorts must suffer connection or handshake 227 failure before a specific destination is considered unavailable 228 (and further delivery is suspended). 229 230 <b><a href="postconf.5.html#transport_destination_concurrency_failed_cohort_limit">transport_destination_concurrency_failed_cohort_limit</a> ($<a href="postconf.5.html#default_destination_concurrency_failed_cohort_limit">default_desti</a>-</b> 231 <b><a href="postconf.5.html#default_destination_concurrency_failed_cohort_limit">nation_concurrency_failed_cohort_limit</a>)</b> 232 A transport-specific override for the <a href="postconf.5.html#default_destination_concurrency_failed_cohort_limit">default_destination_con</a>- 233 <a href="postconf.5.html#default_destination_concurrency_failed_cohort_limit">currency_failed_cohort_limit</a> parameter value, where <i>transport</i> is 234 the <a href="master.5.html">master.cf</a> name of the message delivery transport. 235 236 <b><a href="postconf.5.html#default_destination_concurrency_negative_feedback">default_destination_concurrency_negative_feedback</a> (1)</b> 237 The per-destination amount of delivery concurrency negative 238 feedback, after a delivery completes with a connection or hand- 239 shake failure. 240 241 <b><a href="postconf.5.html#transport_destination_concurrency_negative_feedback">transport_destination_concurrency_negative_feedback</a> ($<a href="postconf.5.html#default_destination_concurrency_negative_feedback">default_destina</a>-</b> 242 <b><a href="postconf.5.html#default_destination_concurrency_negative_feedback">tion_concurrency_negative_feedback</a>)</b> 243 A transport-specific override for the <a href="postconf.5.html#default_destination_concurrency_negative_feedback">default_destination_con</a>- 244 <a href="postconf.5.html#default_destination_concurrency_negative_feedback">currency_negative_feedback</a> parameter value, where <i>transport</i> is 245 the <a href="master.5.html">master.cf</a> name of the message delivery transport. 246 247 <b><a href="postconf.5.html#default_destination_concurrency_positive_feedback">default_destination_concurrency_positive_feedback</a> (1)</b> 248 The per-destination amount of delivery concurrency positive 249 feedback, after a delivery completes without connection or hand- 250 shake failure. 251 252 <b><a href="postconf.5.html#transport_destination_concurrency_positive_feedback">transport_destination_concurrency_positive_feedback</a> ($<a href="postconf.5.html#default_destination_concurrency_positive_feedback">default_destina</a>-</b> 253 <b><a href="postconf.5.html#default_destination_concurrency_positive_feedback">tion_concurrency_positive_feedback</a>)</b> 254 A transport-specific override for the <a href="postconf.5.html#default_destination_concurrency_positive_feedback">default_destination_con</a>- 255 <a href="postconf.5.html#default_destination_concurrency_positive_feedback">currency_positive_feedback</a> parameter value, where <i>transport</i> is 256 the <a href="master.5.html">master.cf</a> name of the message delivery transport. 257 258 <b><a href="postconf.5.html#destination_concurrency_feedback_debug">destination_concurrency_feedback_debug</a> (no)</b> 259 Make the queue manager's feedback algorithm verbose for perfor- 260 mance analysis purposes. 261 262<b>RECIPIENT SCHEDULING CONTROLS</b> 263 <b><a href="postconf.5.html#default_destination_recipient_limit">default_destination_recipient_limit</a> (50)</b> 264 The default maximal number of recipients per message delivery. 265 266 <b><a href="postconf.5.html#transport_destination_recipient_limit">transport_destination_recipient_limit</a> ($<a href="postconf.5.html#default_destination_recipient_limit">default_destination_recipi</a>-</b> 267 <b><a href="postconf.5.html#default_destination_recipient_limit">ent_limit</a>)</b> 268 A transport-specific override for the <a href="postconf.5.html#default_destination_recipient_limit">default_destination_recip</a>- 269 <a href="postconf.5.html#default_destination_recipient_limit">ient_limit</a> parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> 270 name of the message delivery transport. 271 272<b>OTHER RESOURCE AND RATE CONTROLS</b> 273 <b><a href="postconf.5.html#minimal_backoff_time">minimal_backoff_time</a> (300s)</b> 274 The minimal time between attempts to deliver a deferred message; 275 prior to Postfix 2.4 the default value was 1000s. 276 277 <b><a href="postconf.5.html#maximal_backoff_time">maximal_backoff_time</a> (4000s)</b> 278 The maximal time between attempts to deliver a deferred message. 279 280 <b><a href="postconf.5.html#maximal_queue_lifetime">maximal_queue_lifetime</a> (5d)</b> 281 Consider a message as undeliverable, when delivery fails with a 282 temporary error, and the time in the queue has reached the <a href="postconf.5.html#maximal_queue_lifetime">maxi</a>- 283 <a href="postconf.5.html#maximal_queue_lifetime">mal_queue_lifetime</a> limit. 284 285 <b><a href="postconf.5.html#queue_run_delay">queue_run_delay</a> (300s)</b> 286 The time between <a href="QSHAPE_README.html#deferred_queue">deferred queue</a> scans by the queue manager; 287 prior to Postfix 2.4 the default value was 1000s. 288 289 <b><a href="postconf.5.html#transport_retry_time">transport_retry_time</a> (60s)</b> 290 The time between attempts by the Postfix queue manager to con- 291 tact a malfunctioning message delivery transport. 292 293 Available in Postfix version 2.1 and later: 294 295 <b><a href="postconf.5.html#bounce_queue_lifetime">bounce_queue_lifetime</a> (5d)</b> 296 Consider a bounce message as undeliverable, when delivery fails 297 with a temporary error, and the time in the queue has reached 298 the <a href="postconf.5.html#bounce_queue_lifetime">bounce_queue_lifetime</a> limit. 299 300 Available in Postfix version 2.5 and later: 301 302 <b><a href="postconf.5.html#default_destination_rate_delay">default_destination_rate_delay</a> (0s)</b> 303 The default amount of delay that is inserted between individual 304 message deliveries to the same destination and over the same 305 message delivery transport. 306 307 <b><a href="postconf.5.html#transport_destination_rate_delay">transport_destination_rate_delay</a> ($<a href="postconf.5.html#default_destination_rate_delay">default_destination_rate_delay</a>)</b> 308 A transport-specific override for the <a href="postconf.5.html#default_destination_rate_delay">default_destina</a>- 309 <a href="postconf.5.html#default_destination_rate_delay">tion_rate_delay</a> parameter value, where <i>transport</i> is the <a href="master.5.html">mas- 310 ter.cf</a> name of the message delivery transport. 311 312 Available in Postfix version 3.1 and later: 313 314 <b><a href="postconf.5.html#default_transport_rate_delay">default_transport_rate_delay</a> (0s)</b> 315 The default amount of delay that is inserted between individual 316 message deliveries over the same message delivery transport, 317 regardless of destination. 318 319 <b><a href="postconf.5.html#transport_transport_rate_delay">transport_transport_rate_delay</a> ($<a href="postconf.5.html#default_transport_rate_delay">default_transport_rate_delay</a>)</b> 320 A transport-specific override for the <a href="postconf.5.html#default_transport_rate_delay">default_trans</a>- 321 <a href="postconf.5.html#default_transport_rate_delay">port_rate_delay</a> parameter value, where the initial <i>transport</i> in 322 the parameter name is the <a href="master.5.html">master.cf</a> name of the message delivery 323 transport. 324 325<b>SAFETY CONTROLS</b> 326 <b><a href="postconf.5.html#qmgr_daemon_timeout">qmgr_daemon_timeout</a> (1000s)</b> 327 How much time a Postfix queue manager process may take to handle 328 a request before it is terminated by a built-in watchdog timer. 329 330 <b><a href="postconf.5.html#qmgr_ipc_timeout">qmgr_ipc_timeout</a> (60s)</b> 331 The time limit for the queue manager to send or receive informa- 332 tion over an internal communication channel. 333 334 Available in Postfix version 3.1 and later: 335 336 <b><a href="postconf.5.html#address_verify_pending_request_limit">address_verify_pending_request_limit</a> (see 'postconf -d' output)</b> 337 A safety limit that prevents address verification requests from 338 overwhelming the Postfix queue. 339 340<b>MISCELLANEOUS CONTROLS</b> 341 <b><a href="postconf.5.html#config_directory">config_directory</a> (see 'postconf -d' output)</b> 342 The default location of the Postfix <a href="postconf.5.html">main.cf</a> and <a href="master.5.html">master.cf</a> con- 343 figuration files. 344 345 <b><a href="postconf.5.html#defer_transports">defer_transports</a> (empty)</b> 346 The names of message delivery transports that should not deliver 347 mail unless someone issues "<b>sendmail -q</b>" or equivalent. 348 349 <b><a href="postconf.5.html#delay_logging_resolution_limit">delay_logging_resolution_limit</a> (2)</b> 350 The maximal number of digits after the decimal point when log- 351 ging sub-second delay values. 352 353 <b><a href="postconf.5.html#helpful_warnings">helpful_warnings</a> (yes)</b> 354 Log warnings about problematic configuration settings, and pro- 355 vide helpful suggestions. 356 357 <b><a href="postconf.5.html#process_id">process_id</a> (read-only)</b> 358 The process ID of a Postfix command or daemon process. 359 360 <b><a href="postconf.5.html#process_name">process_name</a> (read-only)</b> 361 The process name of a Postfix command or daemon process. 362 363 <b><a href="postconf.5.html#queue_directory">queue_directory</a> (see 'postconf -d' output)</b> 364 The location of the Postfix top-level queue directory. 365 366 <b><a href="postconf.5.html#syslog_facility">syslog_facility</a> (mail)</b> 367 The syslog facility of Postfix logging. 368 369 <b><a href="postconf.5.html#syslog_name">syslog_name</a> (see 'postconf -d' output)</b> 370 A prefix that is prepended to the process name in syslog 371 records, so that, for example, "smtpd" becomes "prefix/smtpd". 372 373 Available in Postfix version 3.0 and later: 374 375 <b><a href="postconf.5.html#confirm_delay_cleared">confirm_delay_cleared</a> (no)</b> 376 After sending a "your message is delayed" notification, inform 377 the sender when the delay clears up. 378 379 Available in Postfix 3.3 and later: 380 381 <b><a href="postconf.5.html#service_name">service_name</a> (read-only)</b> 382 The <a href="master.5.html">master.cf</a> service name of a Postfix daemon process. 383 384 Available in Postfix 3.5 and later: 385 386 <b><a href="postconf.5.html#info_log_address_format">info_log_address_format</a> (external)</b> 387 The email address form that will be used in non-debug logging 388 (info, warning, etc.). 389 390<b>FILES</b> 391 /var/spool/postfix/incoming, <a href="QSHAPE_README.html#incoming_queue">incoming queue</a> 392 /var/spool/postfix/active, <a href="QSHAPE_README.html#active_queue">active queue</a> 393 /var/spool/postfix/deferred, <a href="QSHAPE_README.html#deferred_queue">deferred queue</a> 394 /var/spool/postfix/bounce, non-delivery status 395 /var/spool/postfix/defer, non-delivery status 396 /var/spool/postfix/trace, delivery status 397 398<b>SEE ALSO</b> 399 <a href="trivial-rewrite.8.html">trivial-rewrite(8)</a>, address routing 400 <a href="bounce.8.html">bounce(8)</a>, delivery status reports 401 <a href="postconf.5.html">postconf(5)</a>, configuration parameters 402 <a href="master.5.html">master(5)</a>, generic daemon options 403 <a href="master.8.html">master(8)</a>, process manager 404 <a href="postlogd.8.html">postlogd(8)</a>, Postfix logging 405 syslogd(8), system logging 406 407<b>README FILES</b> 408 <a href="QSHAPE_README.html">QSHAPE_README</a>, Postfix queue analysis 409 410<b>LICENSE</b> 411 The Secure Mailer license must be distributed with this software. 412 413<b>AUTHOR(S)</b> 414 Wietse Venema 415 IBM T.J. Watson Research 416 P.O. Box 704 417 Yorktown Heights, NY 10598, USA 418 419 Wietse Venema 420 Google, Inc. 421 111 8th Avenue 422 New York, NY 10011, USA 423 424 OQMGR(8) 425</pre> </body> </html> 426