# Postfix Anatomy - Behind the Scenes

Up one level | Receiving Mail | Delivering Mail | Behind the Scenes | Command-line Utilities

The previous sections gave a simplified overview of how the Postfix system sends and receives mail. Several other things happen behind the scenes. Unfortunately, this is hard to visualize on a two-dimensional display, so this document has no illustration.

- The master daemon is the supervisor process that keeps an eye on the well-being of the mail system. It is typically started at system boot time by the postfix command, and keeps running until the system goes down. The master daemon is responsible for starting all other Postfix daemon processes on demand, and for restarting daemons that terminated prematurely because of some problem. The master daemon is also responsible for enforcing the daemon process count limits as specified in the master.cf configuration file.

- The bounce or defer daemon is called upon left and right by other daemon processes, in order to maintain per-message log files with non-delivery status information.

- The trivial-rewrite daemon is called upon left and right by other daemon processes, in order to rewrite an address to user@fully.qualified.domain form, or in order to resolve a destination.

- The showq daemon lists the Postfix queue status. This is the program behind the mailq command.

- The flush daemon improves the performance of the SMTP ETRN request, and of its command-line equivalent, sendmail -qRdestination, for selected destinations.

- The spawn daemon listens on a TCP port, UNIX-domain socket or FIFO, and runs non-Postfix commands on request, with the socket or FIFO connected to the standard input, output and error streams. It is currently used only in an example of the Postfix external content filtering system.

Up one level | Receiving Mail | Delivering Mail | Behind the Scenes | Command-line Utilities