mirror of
https://github.com/vdukhovni/postfix
synced 2025-09-03 15:45:24 +00:00
postfix-3.4-20180403
This commit is contained in:
committed by
Viktor Dukhovni
parent
787f2e15f7
commit
0b850f6840
@@ -23363,3 +23363,11 @@ Apologies for any names omitted.
|
|||||||
|
|
||||||
Portability: FreeBSD 11 is supported. Files: makedefs,
|
Portability: FreeBSD 11 is supported. Files: makedefs,
|
||||||
util/sys_defs.h.
|
util/sys_defs.h.
|
||||||
|
|
||||||
|
20180403
|
||||||
|
|
||||||
|
Containers: "postfix start-fg" will now attempt to run the
|
||||||
|
master daemon as PID 1, and "postfix stop" will use a
|
||||||
|
stronger signal if the master does not stop. Files:
|
||||||
|
conf/postfix-script, master/master.c, master/master_sig.c,
|
||||||
|
postfix/postfix.c.
|
||||||
|
@@ -150,11 +150,16 @@ start|start-fg)
|
|||||||
;;
|
;;
|
||||||
start-fg)
|
start-fg)
|
||||||
# Foreground start-up is incompatible with multi-instance mode.
|
# Foreground start-up is incompatible with multi-instance mode.
|
||||||
# We can't use "exec $daemon_directory/master" here: that would
|
# Use "exec $daemon_directory/master -i" only if PID == 1.
|
||||||
# break process group management, and "postfix stop" would kill
|
# Otherwise, doing so would break process group management,
|
||||||
# too many processes.
|
# and "postfix stop" would kill too many processes.
|
||||||
case $instances in
|
case $instances in
|
||||||
"") $daemon_directory/master
|
"") case $$ in
|
||||||
|
1) exec $daemon_directory/master -i
|
||||||
|
$FATAL "cannot start-fg the master daemon"
|
||||||
|
exit 1;;
|
||||||
|
*) $daemon_directory/master;;
|
||||||
|
esac
|
||||||
;;
|
;;
|
||||||
*) $FATAL "start-fg does not support multi_instance_directories"
|
*) $FATAL "start-fg does not support multi_instance_directories"
|
||||||
exit 1
|
exit 1
|
||||||
|
@@ -10,7 +10,7 @@ MASTER(8) MASTER(8)
|
|||||||
master - Postfix master process
|
master - Postfix master process
|
||||||
|
|
||||||
<b>SYNOPSIS</b>
|
<b>SYNOPSIS</b>
|
||||||
<b>master</b> [<b>-Ddtvw</b>] [<b>-c</b> <i>config</i><b>_</b><i>dir</i>] [<b>-e</b> <i>exit</i><b>_</b><i>time</i>]
|
<b>master</b> [<b>-Dditvw</b>] [<b>-c</b> <i>config</i><b>_</b><i>dir</i>] [<b>-e</b> <i>exit</i><b>_</b><i>time</i>]
|
||||||
|
|
||||||
<b>DESCRIPTION</b>
|
<b>DESCRIPTION</b>
|
||||||
The <a href="master.8.html"><b>master</b>(8)</a> daemon is the resident process that runs Postfix daemons
|
The <a href="master.8.html"><b>master</b>(8)</a> daemon is the resident process that runs Postfix daemons
|
||||||
@@ -47,6 +47,10 @@ MASTER(8) MASTER(8)
|
|||||||
Terminate the master process after <i>exit</i><b>_</b><i>time</i> seconds. Child pro-
|
Terminate the master process after <i>exit</i><b>_</b><i>time</i> seconds. Child pro-
|
||||||
cesses terminate at their convenience.
|
cesses terminate at their convenience.
|
||||||
|
|
||||||
|
<b>-i</b> Enable <b>init</b> mode: do not attempt to become a session or process
|
||||||
|
group leader. This mode is allowed only if the process ID equals
|
||||||
|
1.
|
||||||
|
|
||||||
<b>-t</b> Test mode. Return a zero exit status when the <b>master.pid</b> lock
|
<b>-t</b> Test mode. Return a zero exit status when the <b>master.pid</b> lock
|
||||||
file does not exist or when that file is not locked. This is
|
file does not exist or when that file is not locked. This is
|
||||||
evidence that the <a href="master.8.html"><b>master</b>(8)</a> daemon is not running.
|
evidence that the <a href="master.8.html"><b>master</b>(8)</a> daemon is not running.
|
||||||
|
@@ -38,100 +38,101 @@ POSTFIX(1) POSTFIX(1)
|
|||||||
|
|
||||||
<b>start-fg</b>
|
<b>start-fg</b>
|
||||||
Like <b>start</b>, but keep the master daemon running in the fore-
|
Like <b>start</b>, but keep the master daemon running in the fore-
|
||||||
ground. This requires that multi-instance support is disabled
|
ground, if possible as PID 1. This command requires that
|
||||||
(i.e. the <a href="postconf.5.html#multi_instance_directories">multi_instance_directories</a> parameter value must be
|
multi-instance support is disabled (i.e. the
|
||||||
empty). When running Postfix inside a container, mount the con-
|
<a href="postconf.5.html#multi_instance_directories">multi_instance_directories</a> parameter value must be empty). When
|
||||||
tainer host's /dev/log socket inside the container (example:
|
running Postfix inside a container, mount the container host's
|
||||||
"docker run -v /dev/log:/dev/log ...") and specify a distinct
|
/dev/log socket inside the container (example: "docker run -v
|
||||||
Postfix "<a href="postconf.5.html#syslog_name">syslog_name</a>" prefix that identifies logging from the
|
/dev/log:/dev/log ...") and specify a distinct Postfix "sys-
|
||||||
Postfix instance.
|
log_name" prefix that identifies logging from the Postfix
|
||||||
|
instance.
|
||||||
|
|
||||||
<b>stop</b> Stop the Postfix mail system in an orderly fashion. If possible,
|
<b>stop</b> Stop the Postfix mail system in an orderly fashion. If possible,
|
||||||
running processes are allowed to terminate at their earliest
|
running processes are allowed to terminate at their earliest
|
||||||
convenience.
|
convenience.
|
||||||
|
|
||||||
Note: in order to refresh the Postfix mail system after a con-
|
Note: in order to refresh the Postfix mail system after a con-
|
||||||
figuration change, do not use the <b>start</b> and <b>stop</b> commands in
|
figuration change, do not use the <b>start</b> and <b>stop</b> commands in
|
||||||
succession. Use the <b>reload</b> command instead.
|
succession. Use the <b>reload</b> command instead.
|
||||||
|
|
||||||
<b>abort</b> Stop the Postfix mail system abruptly. Running processes are
|
<b>abort</b> Stop the Postfix mail system abruptly. Running processes are
|
||||||
signaled to stop immediately.
|
signaled to stop immediately.
|
||||||
|
|
||||||
<b>flush</b> Force delivery: attempt to deliver every message in the deferred
|
<b>flush</b> Force delivery: attempt to deliver every message in the deferred
|
||||||
mail queue. Normally, attempts to deliver delayed mail happen at
|
mail queue. Normally, attempts to deliver delayed mail happen at
|
||||||
regular intervals, the interval doubling after each failed
|
regular intervals, the interval doubling after each failed
|
||||||
attempt.
|
attempt.
|
||||||
|
|
||||||
Warning: flushing undeliverable mail frequently will result in
|
Warning: flushing undeliverable mail frequently will result in
|
||||||
poor delivery performance of all other mail.
|
poor delivery performance of all other mail.
|
||||||
|
|
||||||
<b>reload</b> Re-read configuration files. Running processes terminate at
|
<b>reload</b> Re-read configuration files. Running processes terminate at
|
||||||
their earliest convenience.
|
their earliest convenience.
|
||||||
|
|
||||||
<b>status</b> Indicate if the Postfix mail system is currently running.
|
<b>status</b> Indicate if the Postfix mail system is currently running.
|
||||||
|
|
||||||
<b>set-permissions</b> [<i>name</i>=<i>value ...</i>]
|
<b>set-permissions</b> [<i>name</i>=<i>value ...</i>]
|
||||||
Set the ownership and permissions of Postfix related files and
|
Set the ownership and permissions of Postfix related files and
|
||||||
directories, as specified in the <b>postfix-files</b> file.
|
directories, as specified in the <b>postfix-files</b> file.
|
||||||
|
|
||||||
Specify <i>name</i>=<i>value</i> to override and update specific <a href="postconf.5.html">main.cf</a> con-
|
Specify <i>name</i>=<i>value</i> to override and update specific <a href="postconf.5.html">main.cf</a> con-
|
||||||
figuration parameters. Use this, for example, to change the
|
figuration parameters. Use this, for example, to change the
|
||||||
<b><a href="postconf.5.html#mail_owner">mail_owner</a></b> or <b><a href="postconf.5.html#setgid_group">setgid_group</a></b> setting for an already installed
|
<b><a href="postconf.5.html#mail_owner">mail_owner</a></b> or <b><a href="postconf.5.html#setgid_group">setgid_group</a></b> setting for an already installed
|
||||||
Postfix system.
|
Postfix system.
|
||||||
|
|
||||||
This feature is available in Postfix 2.1 and later. With Post-
|
This feature is available in Postfix 2.1 and later. With Post-
|
||||||
fix 2.0 and earlier, use "<b>$<a href="postconf.5.html#config_directory">config_directory</a>/post-install</b>
|
fix 2.0 and earlier, use "<b>$<a href="postconf.5.html#config_directory">config_directory</a>/post-install</b>
|
||||||
<b>set-permissions</b>".
|
<b>set-permissions</b>".
|
||||||
|
|
||||||
<b>tls</b> <i>subcommand</i>
|
<b>tls</b> <i>subcommand</i>
|
||||||
Enable opportunistic TLS in the Postfix SMTP client or server,
|
Enable opportunistic TLS in the Postfix SMTP client or server,
|
||||||
and manage Postfix SMTP server TLS private keys and certifi-
|
and manage Postfix SMTP server TLS private keys and certifi-
|
||||||
cates. See <a href="postfix-tls.1.html">postfix-tls(1)</a> for documentation.
|
cates. See <a href="postfix-tls.1.html">postfix-tls(1)</a> for documentation.
|
||||||
|
|
||||||
This feature is available in Postfix 3.1 and later.
|
This feature is available in Postfix 3.1 and later.
|
||||||
|
|
||||||
<b>upgrade-configuration</b> [<i>name</i>=<i>value ...</i>]
|
<b>upgrade-configuration</b> [<i>name</i>=<i>value ...</i>]
|
||||||
Update the <a href="postconf.5.html"><b>main.cf</b></a> and <a href="master.5.html"><b>master.cf</b></a> files with information that
|
Update the <a href="postconf.5.html"><b>main.cf</b></a> and <a href="master.5.html"><b>master.cf</b></a> files with information that
|
||||||
Postfix needs in order to run: add or update services, and add
|
Postfix needs in order to run: add or update services, and add
|
||||||
or update configuration parameter settings.
|
or update configuration parameter settings.
|
||||||
|
|
||||||
Specify <i>name</i>=<i>value</i> to override and update specific <a href="postconf.5.html">main.cf</a> con-
|
Specify <i>name</i>=<i>value</i> to override and update specific <a href="postconf.5.html">main.cf</a> con-
|
||||||
figuration parameters.
|
figuration parameters.
|
||||||
|
|
||||||
This feature is available in Postfix 2.1 and later. With Post-
|
This feature is available in Postfix 2.1 and later. With Post-
|
||||||
fix 2.0 and earlier, use "<b>$<a href="postconf.5.html#config_directory">config_directory</a>/post-install</b>
|
fix 2.0 and earlier, use "<b>$<a href="postconf.5.html#config_directory">config_directory</a>/post-install</b>
|
||||||
<b>upgrade-configuration</b>".
|
<b>upgrade-configuration</b>".
|
||||||
|
|
||||||
The following options are implemented:
|
The following options are implemented:
|
||||||
|
|
||||||
<b>-c</b> <i>config</i><b>_</b><i>dir</i>
|
<b>-c</b> <i>config</i><b>_</b><i>dir</i>
|
||||||
Read the <a href="postconf.5.html"><b>main.cf</b></a> and <a href="master.5.html"><b>master.cf</b></a> configuration files in the named
|
Read the <a href="postconf.5.html"><b>main.cf</b></a> and <a href="master.5.html"><b>master.cf</b></a> configuration files in the named
|
||||||
directory instead of the default configuration directory. Use
|
directory instead of the default configuration directory. Use
|
||||||
this to distinguish between multiple Postfix instances on the
|
this to distinguish between multiple Postfix instances on the
|
||||||
same host.
|
same host.
|
||||||
|
|
||||||
With Postfix 2.6 and later, this option forces the <a href="postfix.1.html">postfix(1)</a>
|
With Postfix 2.6 and later, this option forces the <a href="postfix.1.html">postfix(1)</a>
|
||||||
command to operate on the specified Postfix instance only. This
|
command to operate on the specified Postfix instance only. This
|
||||||
behavior is inherited by <a href="postfix.1.html">postfix(1)</a> commands that run as a
|
behavior is inherited by <a href="postfix.1.html">postfix(1)</a> commands that run as a
|
||||||
descendant of the current process.
|
descendant of the current process.
|
||||||
|
|
||||||
<b>-D</b> (with <b>postfix start</b> only)
|
<b>-D</b> (with <b>postfix start</b> only)
|
||||||
Run each Postfix daemon under control of a debugger as specified
|
Run each Postfix daemon under control of a debugger as specified
|
||||||
via the <b><a href="postconf.5.html#debugger_command">debugger_command</a></b> configuration parameter.
|
via the <b><a href="postconf.5.html#debugger_command">debugger_command</a></b> configuration parameter.
|
||||||
|
|
||||||
<b>-v</b> Enable verbose logging for debugging purposes. Multiple <b>-v</b>
|
<b>-v</b> Enable verbose logging for debugging purposes. Multiple <b>-v</b>
|
||||||
options make the software increasingly verbose.
|
options make the software increasingly verbose.
|
||||||
|
|
||||||
<b>ENVIRONMENT</b>
|
<b>ENVIRONMENT</b>
|
||||||
The <a href="postfix.1.html"><b>postfix</b>(1)</a> command exports the following environment variables
|
The <a href="postfix.1.html"><b>postfix</b>(1)</a> command exports the following environment variables
|
||||||
before executing the <b>postfix-script</b> file:
|
before executing the <b>postfix-script</b> file:
|
||||||
|
|
||||||
<b>MAIL_CONFIG</b>
|
<b>MAIL_CONFIG</b>
|
||||||
This is set when the -c command-line option is present.
|
This is set when the -c command-line option is present.
|
||||||
|
|
||||||
With Postfix 2.6 and later, this environment variable forces the
|
With Postfix 2.6 and later, this environment variable forces the
|
||||||
<a href="postfix.1.html">postfix(1)</a> command to operate on the specified Postfix instance
|
<a href="postfix.1.html">postfix(1)</a> command to operate on the specified Postfix instance
|
||||||
only. This behavior is inherited by <a href="postfix.1.html">postfix(1)</a> commands that
|
only. This behavior is inherited by <a href="postfix.1.html">postfix(1)</a> commands that
|
||||||
run as a descendant of the current process.
|
run as a descendant of the current process.
|
||||||
|
|
||||||
<b>MAIL_VERBOSE</b>
|
<b>MAIL_VERBOSE</b>
|
||||||
@@ -145,7 +146,7 @@ POSTFIX(1) POSTFIX(1)
|
|||||||
ment variables with the same names:
|
ment variables with the same names:
|
||||||
|
|
||||||
<b><a href="postconf.5.html#config_directory">config_directory</a> (see 'postconf -d' output)</b>
|
<b><a href="postconf.5.html#config_directory">config_directory</a> (see 'postconf -d' output)</b>
|
||||||
The default location of the Postfix <a href="postconf.5.html">main.cf</a> and <a href="master.5.html">master.cf</a> con-
|
The default location of the Postfix <a href="postconf.5.html">main.cf</a> and <a href="master.5.html">master.cf</a> con-
|
||||||
figuration files.
|
figuration files.
|
||||||
|
|
||||||
<b><a href="postconf.5.html#command_directory">command_directory</a> (see 'postconf -d' output)</b>
|
<b><a href="postconf.5.html#command_directory">command_directory</a> (see 'postconf -d' output)</b>
|
||||||
@@ -155,22 +156,22 @@ POSTFIX(1) POSTFIX(1)
|
|||||||
The directory with Postfix support programs and daemon programs.
|
The directory with Postfix support programs and daemon programs.
|
||||||
|
|
||||||
<b><a href="postconf.5.html#html_directory">html_directory</a> (see 'postconf -d' output)</b>
|
<b><a href="postconf.5.html#html_directory">html_directory</a> (see 'postconf -d' output)</b>
|
||||||
The location of Postfix HTML files that describe how to build,
|
The location of Postfix HTML files that describe how to build,
|
||||||
configure or operate a specific Postfix subsystem or feature.
|
configure or operate a specific Postfix subsystem or feature.
|
||||||
|
|
||||||
<b><a href="postconf.5.html#mail_owner">mail_owner</a> (postfix)</b>
|
<b><a href="postconf.5.html#mail_owner">mail_owner</a> (postfix)</b>
|
||||||
The UNIX system account that owns the Postfix queue and most
|
The UNIX system account that owns the Postfix queue and most
|
||||||
Postfix daemon processes.
|
Postfix daemon processes.
|
||||||
|
|
||||||
<b><a href="postconf.5.html#mailq_path">mailq_path</a> (see 'postconf -d' output)</b>
|
<b><a href="postconf.5.html#mailq_path">mailq_path</a> (see 'postconf -d' output)</b>
|
||||||
Sendmail compatibility feature that specifies where the Postfix
|
Sendmail compatibility feature that specifies where the Postfix
|
||||||
<a href="mailq.1.html"><b>mailq</b>(1)</a> command is installed.
|
<a href="mailq.1.html"><b>mailq</b>(1)</a> command is installed.
|
||||||
|
|
||||||
<b><a href="postconf.5.html#manpage_directory">manpage_directory</a> (see 'postconf -d' output)</b>
|
<b><a href="postconf.5.html#manpage_directory">manpage_directory</a> (see 'postconf -d' output)</b>
|
||||||
Where the Postfix manual pages are installed.
|
Where the Postfix manual pages are installed.
|
||||||
|
|
||||||
<b><a href="postconf.5.html#newaliases_path">newaliases_path</a> (see 'postconf -d' output)</b>
|
<b><a href="postconf.5.html#newaliases_path">newaliases_path</a> (see 'postconf -d' output)</b>
|
||||||
Sendmail compatibility feature that specifies the location of
|
Sendmail compatibility feature that specifies the location of
|
||||||
the <a href="newaliases.1.html"><b>newaliases</b>(1)</a> command.
|
the <a href="newaliases.1.html"><b>newaliases</b>(1)</a> command.
|
||||||
|
|
||||||
<b><a href="postconf.5.html#queue_directory">queue_directory</a> (see 'postconf -d' output)</b>
|
<b><a href="postconf.5.html#queue_directory">queue_directory</a> (see 'postconf -d' output)</b>
|
||||||
@@ -181,31 +182,31 @@ POSTFIX(1) POSTFIX(1)
|
|||||||
configure or operate a specific Postfix subsystem or feature.
|
configure or operate a specific Postfix subsystem or feature.
|
||||||
|
|
||||||
<b><a href="postconf.5.html#sendmail_path">sendmail_path</a> (see 'postconf -d' output)</b>
|
<b><a href="postconf.5.html#sendmail_path">sendmail_path</a> (see 'postconf -d' output)</b>
|
||||||
A Sendmail compatibility feature that specifies the location of
|
A Sendmail compatibility feature that specifies the location of
|
||||||
the Postfix <a href="sendmail.1.html"><b>sendmail</b>(1)</a> command.
|
the Postfix <a href="sendmail.1.html"><b>sendmail</b>(1)</a> command.
|
||||||
|
|
||||||
<b><a href="postconf.5.html#setgid_group">setgid_group</a> (postdrop)</b>
|
<b><a href="postconf.5.html#setgid_group">setgid_group</a> (postdrop)</b>
|
||||||
The group ownership of set-gid Postfix commands and of
|
The group ownership of set-gid Postfix commands and of
|
||||||
group-writable Postfix directories.
|
group-writable Postfix directories.
|
||||||
|
|
||||||
Available in Postfix version 2.5 and later:
|
Available in Postfix version 2.5 and later:
|
||||||
|
|
||||||
<b><a href="postconf.5.html#data_directory">data_directory</a> (see 'postconf -d' output)</b>
|
<b><a href="postconf.5.html#data_directory">data_directory</a> (see 'postconf -d' output)</b>
|
||||||
The directory with Postfix-writable data files (for example:
|
The directory with Postfix-writable data files (for example:
|
||||||
caches, pseudo-random numbers).
|
caches, pseudo-random numbers).
|
||||||
|
|
||||||
Available in Postfix version 3.0 and later:
|
Available in Postfix version 3.0 and later:
|
||||||
|
|
||||||
<b><a href="postconf.5.html#meta_directory">meta_directory</a> (see 'postconf -d' output)</b>
|
<b><a href="postconf.5.html#meta_directory">meta_directory</a> (see 'postconf -d' output)</b>
|
||||||
The location of non-executable files that are shared among mul-
|
The location of non-executable files that are shared among mul-
|
||||||
tiple Postfix instances, such as postfix-files, dynamicmaps.cf,
|
tiple Postfix instances, such as postfix-files, dynamicmaps.cf,
|
||||||
and the multi-instance template files <a href="postconf.5.html">main.cf</a>.proto and <a href="master.5.html">mas-
|
and the multi-instance template files <a href="postconf.5.html">main.cf</a>.proto and <a href="master.5.html">mas-
|
||||||
ter.cf</a>.proto.
|
ter.cf</a>.proto.
|
||||||
|
|
||||||
<b><a href="postconf.5.html#shlib_directory">shlib_directory</a> (see 'postconf -d' output)</b>
|
<b><a href="postconf.5.html#shlib_directory">shlib_directory</a> (see 'postconf -d' output)</b>
|
||||||
The location of Postfix dynamically-linked libraries (libpost-
|
The location of Postfix dynamically-linked libraries (libpost-
|
||||||
fix-*.so), and the default location of Postfix database plugins
|
fix-*.so), and the default location of Postfix database plugins
|
||||||
(postfix-*.so) that have a relative pathname in the dynam-
|
(postfix-*.so) that have a relative pathname in the dynam-
|
||||||
icmaps.cf file.
|
icmaps.cf file.
|
||||||
|
|
||||||
Available in Postfix version 3.1 and later:
|
Available in Postfix version 3.1 and later:
|
||||||
@@ -216,29 +217,29 @@ POSTFIX(1) POSTFIX(1)
|
|||||||
Other configuration parameters:
|
Other configuration parameters:
|
||||||
|
|
||||||
<b><a href="postconf.5.html#import_environment">import_environment</a> (see 'postconf -d' output)</b>
|
<b><a href="postconf.5.html#import_environment">import_environment</a> (see 'postconf -d' output)</b>
|
||||||
The list of environment parameters that a privileged Postfix
|
The list of environment parameters that a privileged Postfix
|
||||||
process will import from a non-Postfix parent process, or
|
process will import from a non-Postfix parent process, or
|
||||||
name=value environment overrides.
|
name=value environment overrides.
|
||||||
|
|
||||||
<b><a href="postconf.5.html#syslog_facility">syslog_facility</a> (mail)</b>
|
<b><a href="postconf.5.html#syslog_facility">syslog_facility</a> (mail)</b>
|
||||||
The syslog facility of Postfix logging.
|
The syslog facility of Postfix logging.
|
||||||
|
|
||||||
<b><a href="postconf.5.html#syslog_name">syslog_name</a> (see 'postconf -d' output)</b>
|
<b><a href="postconf.5.html#syslog_name">syslog_name</a> (see 'postconf -d' output)</b>
|
||||||
A prefix that is prepended to the process name in syslog
|
A prefix that is prepended to the process name in syslog
|
||||||
records, so that, for example, "smtpd" becomes "prefix/smtpd".
|
records, so that, for example, "smtpd" becomes "prefix/smtpd".
|
||||||
|
|
||||||
Available in Postfix version 2.6 and later:
|
Available in Postfix version 2.6 and later:
|
||||||
|
|
||||||
<b><a href="postconf.5.html#multi_instance_directories">multi_instance_directories</a> (empty)</b>
|
<b><a href="postconf.5.html#multi_instance_directories">multi_instance_directories</a> (empty)</b>
|
||||||
An optional list of non-default Postfix configuration directo-
|
An optional list of non-default Postfix configuration directo-
|
||||||
ries; these directories belong to additional Postfix instances
|
ries; these directories belong to additional Postfix instances
|
||||||
that share the Postfix executable files and documentation with
|
that share the Postfix executable files and documentation with
|
||||||
the default Postfix instance, and that are started, stopped,
|
the default Postfix instance, and that are started, stopped,
|
||||||
etc., together with the default Postfix instance.
|
etc., together with the default Postfix instance.
|
||||||
|
|
||||||
<b><a href="postconf.5.html#multi_instance_wrapper">multi_instance_wrapper</a> (empty)</b>
|
<b><a href="postconf.5.html#multi_instance_wrapper">multi_instance_wrapper</a> (empty)</b>
|
||||||
The pathname of a multi-instance manager command that the <a href="postfix.1.html"><b>post-</b></a>
|
The pathname of a multi-instance manager command that the <a href="postfix.1.html"><b>post-</b></a>
|
||||||
<a href="postfix.1.html"><b>fix</b>(1)</a> command invokes when the <a href="postconf.5.html#multi_instance_directories">multi_instance_directories</a>
|
<a href="postfix.1.html"><b>fix</b>(1)</a> command invokes when the <a href="postconf.5.html#multi_instance_directories">multi_instance_directories</a>
|
||||||
parameter value is non-empty.
|
parameter value is non-empty.
|
||||||
|
|
||||||
<b><a href="postconf.5.html#multi_instance_group">multi_instance_group</a> (empty)</b>
|
<b><a href="postconf.5.html#multi_instance_group">multi_instance_group</a> (empty)</b>
|
||||||
@@ -248,15 +249,15 @@ POSTFIX(1) POSTFIX(1)
|
|||||||
The optional instance name of this Postfix instance.
|
The optional instance name of this Postfix instance.
|
||||||
|
|
||||||
<b><a href="postconf.5.html#multi_instance_enable">multi_instance_enable</a> (no)</b>
|
<b><a href="postconf.5.html#multi_instance_enable">multi_instance_enable</a> (no)</b>
|
||||||
Allow this Postfix instance to be started, stopped, etc., by a
|
Allow this Postfix instance to be started, stopped, etc., by a
|
||||||
multi-instance manager.
|
multi-instance manager.
|
||||||
|
|
||||||
<b>FILES</b>
|
<b>FILES</b>
|
||||||
Prior to Postfix version 2.6, all of the following files were in <b>$<a href="postconf.5.html#config_directory">con</a>-</b>
|
Prior to Postfix version 2.6, all of the following files were in <b>$<a href="postconf.5.html#config_directory">con</a>-</b>
|
||||||
<b><a href="postconf.5.html#config_directory">fig_directory</a></b>. Some files are now in <b>$<a href="postconf.5.html#daemon_directory">daemon_directory</a></b> so that they can
|
<b><a href="postconf.5.html#config_directory">fig_directory</a></b>. Some files are now in <b>$<a href="postconf.5.html#daemon_directory">daemon_directory</a></b> so that they can
|
||||||
be shared among multiple instances that run the same Postfix version.
|
be shared among multiple instances that run the same Postfix version.
|
||||||
|
|
||||||
Use the command "<b>postconf <a href="postconf.5.html#config_directory">config_directory</a></b>" or "<b>postconf <a href="postconf.5.html#daemon_directory">daemon_direc</a>-</b>
|
Use the command "<b>postconf <a href="postconf.5.html#config_directory">config_directory</a></b>" or "<b>postconf <a href="postconf.5.html#daemon_directory">daemon_direc</a>-</b>
|
||||||
<b><a href="postconf.5.html#daemon_directory">tory</a></b>" to expand the names into their actual values.
|
<b><a href="postconf.5.html#daemon_directory">tory</a></b>" to expand the names into their actual values.
|
||||||
|
|
||||||
$<a href="postconf.5.html#config_directory">config_directory</a>/<a href="postconf.5.html">main.cf</a>, Postfix configuration parameters
|
$<a href="postconf.5.html#config_directory">config_directory</a>/<a href="postconf.5.html">main.cf</a>, Postfix configuration parameters
|
||||||
|
@@ -39,13 +39,14 @@ Start the Postfix mail system. This also runs the configuration
|
|||||||
check described above.
|
check described above.
|
||||||
.IP \fBstart\-fg\fR
|
.IP \fBstart\-fg\fR
|
||||||
Like \fBstart\fR, but keep the master daemon running in the
|
Like \fBstart\fR, but keep the master daemon running in the
|
||||||
foreground. This requires that multi\-instance support is
|
foreground, if possible as PID 1. This command requires
|
||||||
disabled (i.e. the multi_instance_directories parameter
|
that multi\-instance support is disabled (i.e. the
|
||||||
value must be empty). When running Postfix inside a container,
|
multi_instance_directories parameter value must be empty).
|
||||||
mount the container host's /dev/log socket inside the
|
When running Postfix inside a container, mount the container
|
||||||
container (example: "docker run \-v /dev/log:/dev/log ...")
|
host's /dev/log socket inside the container (example: "docker
|
||||||
and specify a distinct Postfix "syslog_name" prefix that
|
run \-v /dev/log:/dev/log ...") and specify a distinct
|
||||||
identifies logging from the Postfix instance.
|
Postfix "syslog_name" prefix that identifies logging from
|
||||||
|
the Postfix instance.
|
||||||
.IP \fBstop\fR
|
.IP \fBstop\fR
|
||||||
Stop the Postfix mail system in an orderly fashion. If
|
Stop the Postfix mail system in an orderly fashion. If
|
||||||
possible, running processes are allowed to terminate at
|
possible, running processes are allowed to terminate at
|
||||||
|
@@ -8,7 +8,7 @@ Postfix master process
|
|||||||
.SH "SYNOPSIS"
|
.SH "SYNOPSIS"
|
||||||
.na
|
.na
|
||||||
.nf
|
.nf
|
||||||
\fBmaster\fR [\fB\-Ddtvw\fR] [\fB\-c \fIconfig_dir\fR] [\fB\-e \fIexit_time\fR]
|
\fBmaster\fR [\fB\-Dditvw\fR] [\fB\-c \fIconfig_dir\fR] [\fB\-e \fIexit_time\fR]
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
.ad
|
.ad
|
||||||
.fi
|
.fi
|
||||||
@@ -43,6 +43,10 @@ for debugging only.
|
|||||||
.IP "\fB\-e \fIexit_time\fR"
|
.IP "\fB\-e \fIexit_time\fR"
|
||||||
Terminate the master process after \fIexit_time\fR seconds. Child
|
Terminate the master process after \fIexit_time\fR seconds. Child
|
||||||
processes terminate at their convenience.
|
processes terminate at their convenience.
|
||||||
|
.IP \fB\-i\fR
|
||||||
|
Enable \fBinit\fR mode: do not attempt to become a session
|
||||||
|
or process group leader. This mode is allowed only if the
|
||||||
|
process ID equals 1.
|
||||||
.IP \fB\-t\fR
|
.IP \fB\-t\fR
|
||||||
Test mode. Return a zero exit status when the \fBmaster.pid\fR lock
|
Test mode. Return a zero exit status when the \fBmaster.pid\fR lock
|
||||||
file does not exist or when that file is not locked. This is evidence
|
file does not exist or when that file is not locked. This is evidence
|
||||||
|
@@ -20,7 +20,7 @@
|
|||||||
* Patches change both the patchlevel and the release date. Snapshots have no
|
* Patches change both the patchlevel and the release date. Snapshots have no
|
||||||
* patchlevel; they change the release date only.
|
* patchlevel; they change the release date only.
|
||||||
*/
|
*/
|
||||||
#define MAIL_RELEASE_DATE "20180401"
|
#define MAIL_RELEASE_DATE "20180403"
|
||||||
#define MAIL_VERSION_NUMBER "3.4"
|
#define MAIL_VERSION_NUMBER "3.4"
|
||||||
|
|
||||||
#ifdef SNAPSHOT
|
#ifdef SNAPSHOT
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
/* SUMMARY
|
/* SUMMARY
|
||||||
/* Postfix master process
|
/* Postfix master process
|
||||||
/* SYNOPSIS
|
/* SYNOPSIS
|
||||||
/* \fBmaster\fR [\fB-Ddtvw\fR] [\fB-c \fIconfig_dir\fR] [\fB-e \fIexit_time\fR]
|
/* \fBmaster\fR [\fB-Dditvw\fR] [\fB-c \fIconfig_dir\fR] [\fB-e \fIexit_time\fR]
|
||||||
/* DESCRIPTION
|
/* DESCRIPTION
|
||||||
/* The \fBmaster\fR(8) daemon is the resident process that runs Postfix
|
/* The \fBmaster\fR(8) daemon is the resident process that runs Postfix
|
||||||
/* daemons on demand: daemons to send or receive messages via the
|
/* daemons on demand: daemons to send or receive messages via the
|
||||||
@@ -37,6 +37,10 @@
|
|||||||
/* .IP "\fB-e \fIexit_time\fR"
|
/* .IP "\fB-e \fIexit_time\fR"
|
||||||
/* Terminate the master process after \fIexit_time\fR seconds. Child
|
/* Terminate the master process after \fIexit_time\fR seconds. Child
|
||||||
/* processes terminate at their convenience.
|
/* processes terminate at their convenience.
|
||||||
|
/* .IP \fB-i\fR
|
||||||
|
/* Enable \fBinit\fR mode: do not attempt to become a session
|
||||||
|
/* or process group leader. This mode is allowed only if the
|
||||||
|
/* process ID equals 1.
|
||||||
/* .IP \fB-t\fR
|
/* .IP \fB-t\fR
|
||||||
/* Test mode. Return a zero exit status when the \fBmaster.pid\fR lock
|
/* Test mode. Return a zero exit status when the \fBmaster.pid\fR lock
|
||||||
/* file does not exist or when that file is not locked. This is evidence
|
/* file does not exist or when that file is not locked. This is evidence
|
||||||
@@ -266,6 +270,7 @@ int main(int argc, char **argv)
|
|||||||
ARGV *import_env;
|
ARGV *import_env;
|
||||||
int wait_flag = 0;
|
int wait_flag = 0;
|
||||||
int monitor_fd = -1;
|
int monitor_fd = -1;
|
||||||
|
int init_mode = 0;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Fingerprint executables and core dumps.
|
* Fingerprint executables and core dumps.
|
||||||
@@ -334,7 +339,7 @@ int main(int argc, char **argv)
|
|||||||
/*
|
/*
|
||||||
* Process JCL.
|
* Process JCL.
|
||||||
*/
|
*/
|
||||||
while ((ch = GETOPT(argc, argv, "c:Dde:tvw")) > 0) {
|
while ((ch = GETOPT(argc, argv, "c:Dde:itvw")) > 0) {
|
||||||
switch (ch) {
|
switch (ch) {
|
||||||
case 'c':
|
case 'c':
|
||||||
if (setenv(CONF_ENV_PATH, optarg, 1) < 0)
|
if (setenv(CONF_ENV_PATH, optarg, 1) < 0)
|
||||||
@@ -346,6 +351,11 @@ int main(int argc, char **argv)
|
|||||||
case 'e':
|
case 'e':
|
||||||
event_request_timer(master_exit_event, (void *) 0, atoi(optarg));
|
event_request_timer(master_exit_event, (void *) 0, atoi(optarg));
|
||||||
break;
|
break;
|
||||||
|
case 'i':
|
||||||
|
if (getpid() != 1)
|
||||||
|
msg_fatal("-i is allowed with for PID 1 process");
|
||||||
|
init_mode = 1;
|
||||||
|
break;
|
||||||
case 'D':
|
case 'D':
|
||||||
debug_me = 1;
|
debug_me = 1;
|
||||||
break;
|
break;
|
||||||
@@ -375,6 +385,8 @@ int main(int argc, char **argv)
|
|||||||
*/
|
*/
|
||||||
if (test_lock && wait_flag)
|
if (test_lock && wait_flag)
|
||||||
msg_fatal("the -t and -w options cannot be used together");
|
msg_fatal("the -t and -w options cannot be used together");
|
||||||
|
if (init_mode + debug_me + !master_detach + wait_flag > 1)
|
||||||
|
msg_fatal("specify one of -i, -D, -d, or -w");
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Run a foreground monitor process that returns an exit status of 0 when
|
* Run a foreground monitor process that returns an exit status of 0 when
|
||||||
@@ -403,7 +415,8 @@ int main(int argc, char **argv)
|
|||||||
* all MTA processes cleanly. Give up if we can't separate from our
|
* all MTA processes cleanly. Give up if we can't separate from our
|
||||||
* parent process. We're not supposed to blow away the parent.
|
* parent process. We're not supposed to blow away the parent.
|
||||||
*/
|
*/
|
||||||
if (debug_me == 0 && master_detach != 0 && setsid() == -1 && getsid(0) != getpid())
|
if (init_mode == 0 && debug_me == 0 && master_detach != 0
|
||||||
|
&& setsid() == -1 && getsid(0) != getpid())
|
||||||
msg_fatal("unable to set session and process group ID: %m");
|
msg_fatal("unable to set session and process group ID: %m");
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@@ -210,6 +210,8 @@ static void master_sigdeath(int sig)
|
|||||||
msg_fatal("%s: sigaction: %m", myname);
|
msg_fatal("%s: sigaction: %m", myname);
|
||||||
if (kill(pid, sig) < 0)
|
if (kill(pid, sig) < 0)
|
||||||
msg_fatal("%s: kill myself: %m", myname);
|
msg_fatal("%s: kill myself: %m", myname);
|
||||||
|
if (kill(pid, SIGKILL) < 0)
|
||||||
|
msg_fatal("%s: kill myself: %m", myname);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* master_sigsetup - set up signal handlers */
|
/* master_sigsetup - set up signal handlers */
|
||||||
|
@@ -33,13 +33,14 @@
|
|||||||
/* check described above.
|
/* check described above.
|
||||||
/* .IP \fBstart-fg\fR
|
/* .IP \fBstart-fg\fR
|
||||||
/* Like \fBstart\fR, but keep the master daemon running in the
|
/* Like \fBstart\fR, but keep the master daemon running in the
|
||||||
/* foreground. This requires that multi-instance support is
|
/* foreground, if possible as PID 1. This command requires
|
||||||
/* disabled (i.e. the multi_instance_directories parameter
|
/* that multi-instance support is disabled (i.e. the
|
||||||
/* value must be empty). When running Postfix inside a container,
|
/* multi_instance_directories parameter value must be empty).
|
||||||
/* mount the container host's /dev/log socket inside the
|
/* When running Postfix inside a container, mount the container
|
||||||
/* container (example: "docker run -v /dev/log:/dev/log ...")
|
/* host's /dev/log socket inside the container (example: "docker
|
||||||
/* and specify a distinct Postfix "syslog_name" prefix that
|
/* run -v /dev/log:/dev/log ...") and specify a distinct
|
||||||
/* identifies logging from the Postfix instance.
|
/* Postfix "syslog_name" prefix that identifies logging from
|
||||||
|
/* the Postfix instance.
|
||||||
/* .IP \fBstop\fR
|
/* .IP \fBstop\fR
|
||||||
/* Stop the Postfix mail system in an orderly fashion. If
|
/* Stop the Postfix mail system in an orderly fashion. If
|
||||||
/* possible, running processes are allowed to terminate at
|
/* possible, running processes are allowed to terminate at
|
||||||
|
Reference in New Issue
Block a user