source: server/mail/exim.xml@ 0aeb696

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 6.2 6.2.0 6.2.0-rc1 6.2.0-rc2 6.3 6.3-rc1 6.3-rc2 6.3-rc3 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 0aeb696 was 0aeb696, checked in by Randy McMurchy <randy@…>, 18 years ago

Added a comment to each file that may need a mention of a test suite added to it, this allows closing of bug #1697

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@5951 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 19.6 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
3 "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!-- Inserted as a reminder to do this. The mention of a test suite
8 is usually right before the root user installation commands. Please
9 delete these 12 (including one blank) lines after you are done.-->
10
11 <!-- Use one of the two mentions below about a test suite,
12 delete the line that is not applicable. Of course, if the
13 test suite uses syntax other than "make check", revise the
14 line to reflect the actual syntax to run the test suite -->
15
16 <!-- <para>This package does not come with a test suite.</para> -->
17 <!-- <para>To test the results, issue: <command>make check</command>.</para> -->
18
19 <!ENTITY exim-download-http "http://www.exim.org/ftp/exim4/exim-&exim-version;.tar.bz2">
20 <!ENTITY exim-download-ftp "ftp://ftp.exim.org/pub/exim/exim4/exim-&exim-version;.tar.bz2">
21 <!ENTITY exim-md5sum "89601650f3b854d469451f30b369622b">
22 <!ENTITY exim-size "1.5 MB">
23 <!ENTITY exim-buildsize "12.4 MB">
24 <!ENTITY exim-time "0.2 SBU">
25]>
26
27<sect1 id="exim" xreflabel="Exim-&exim-version;">
28 <?dbhtml filename="exim.html"?>
29
30 <sect1info>
31 <othername>$LastChangedBy$</othername>
32 <date>$Date$</date>
33 <keywordset>
34 <keyword role="package">exim-&exim-version;.tar</keyword>
35 <keyword role="ftpdir">exim</keyword>
36 </keywordset>
37 </sect1info>
38
39 <title>Exim-&exim-version;</title>
40
41 <indexterm zone="exim">
42 <primary sortas="a-Exim">Exim</primary>
43 </indexterm>
44
45 <sect2 role="package">
46 <title>Introduction to Exim</title>
47
48 <para>The <application>Exim</application> package contains a Mail
49 Transport Agent written by the University of Cambridge, released
50 under the GNU Public License.</para>
51
52 <bridgehead renderas="sect3">Package Information</bridgehead>
53 <itemizedlist spacing="compact">
54 <listitem>
55 <para>Download (HTTP): <ulink url="&exim-download-http;"/></para>
56 </listitem>
57 <listitem>
58 <para>Download (FTP): <ulink url="&exim-download-ftp;"/></para>
59 </listitem>
60 <listitem>
61 <para>Download MD5 sum: &exim-md5sum;</para>
62 </listitem>
63 <listitem>
64 <para>Download size: &exim-size;</para>
65 </listitem>
66 <listitem>
67 <para>Estimated disk space required: &exim-buildsize;</para>
68 </listitem>
69 <listitem>
70 <para>Estimated build time: &exim-time;</para>
71 </listitem>
72 </itemizedlist>
73
74 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
75 <itemizedlist spacing="compact">
76 <listitem>
77 <para>Required patch for Berkeley DB: <ulink
78 url="&patch-root;/exim-&exim-version;-db43-1.patch"/></para>
79 </listitem>
80 </itemizedlist>
81
82 <bridgehead renderas="sect3">Exim Dependencies</bridgehead>
83
84 <bridgehead renderas="sect4">Required</bridgehead>
85 <para role="required"><xref linkend="db"/> (built in LFS) or
86 <!-- <xref linkend="db"/> -->
87 <xref linkend="gdbm"/> or
88 <ulink url="http://sourceforge.net/projects/tdb">TDB</ulink></para>
89
90 <bridgehead renderas="sect4">Optional</bridgehead>
91 <para role="optional"><xref linkend="x-window-system"/>,
92 <xref linkend="openldap"/>,
93 <xref linkend="openssl"/> or
94 <ulink url="http://www.gnu.org/software/gnutls/">GnuTLS</ulink>,
95 <xref linkend="cyrus-sasl"/>,
96 <xref linkend="mysql"/>,
97 <xref linkend="postgresql"/>,
98 <xref linkend="tcpwrappers"/>, and
99 <xref linkend="linux-pam"/></para>
100
101 <para condition="html" role="usernotes">User Notes:
102 <ulink url="&blfs-wiki;/exim"/></para>
103
104 </sect2>
105
106 <sect2 role="installation">
107 <title>Installation of Exim</title>
108
109 <para>Before building <application>Exim</application>, as the
110 <systemitem class="username">root</systemitem> user you should create
111 the group and user <systemitem class="username">exim</systemitem> which
112 will run the <command>exim</command> daemon:</para>
113
114<screen role="root"><userinput>groupadd -g 31 exim &amp;&amp;
115useradd -d /dev/null -c "Exim Daemon" -g exim -s /bin/false -u 31 exim</userinput></screen>
116
117 <!-- Commenting this out as BDB is installed in LFS
118
119 <para>If you have <application>Berkeley DB</application>
120 installed, apply the following patch:</para>
121
122<screen><userinput>patch -Np1 -i ../exim-&exim-version;-db43-1.patch</userinput></screen>
123
124 -->
125
126 <para>Install <application>Exim</application> with the following
127 commands:</para>
128
129<screen><userinput>patch -Np1 -i ../exim-&exim-version;-db43-1.patch &amp;&amp;
130sed -e 's,^BIN_DIR.*$,BIN_DIRECTORY=/usr/sbin,' \
131 -e 's,^CONF.*$,CONFIGURE_FILE=/etc/exim.conf,' \
132 -e 's,^EXIM_USER.*$,EXIM_USER=exim,' \
133 -e 's,^EXIM_MONITOR,#EXIM_MONITOR,' src/EDITME > Local/Makefile &amp;&amp;
134make</userinput></screen>
135
136 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
137
138<screen role="root"><userinput>make install &amp;&amp;
139install -v -m644 doc/exim.8 /usr/share/man/man8 &amp;&amp;
140install -v -d -m755 /usr/share/doc/exim-&exim-version; &amp;&amp;
141install -v -m644 doc/* /usr/share/doc/exim-&exim-version; &amp;&amp;
142ln -sv exim /usr/sbin/sendmail</userinput></screen>
143
144 </sect2>
145
146 <sect2 role="commands">
147 <title>Command Explanations</title>
148
149 <para><command>sed -e ... > Local/Makefile</command>: Most of
150 <application>Exim</application>'s configuration options are compiled in using
151 the directives in <filename>Local/Makefile</filename> which is created from
152 the <filename>src/EDITME</filename> file. This command specifies the minimum
153 set of options. Descriptions for the options are listed below.</para>
154
155 <para><parameter>BIN_DIRECTORY=/usr/sbin</parameter>: This installs all of
156 <application>Exim</application>'s binaries and scripts in
157 <filename class='directory'>/usr/sbin</filename>.</para>
158
159 <para><parameter>CONFIGURE_FILE=/etc/exim.conf</parameter>: This installs
160 <application>Exim</application>'s main configuration file in
161 <filename class='directory'>/etc</filename>.</para>
162
163 <para><parameter>EXIM_USER=exim</parameter>: This tells
164 <application>Exim</application> that after the daemon no longer needs
165 <systemitem class="username">root</systemitem> privileges, the process
166 hands off the daemon to the <systemitem
167 class="username">exim</systemitem> user.</para>
168
169 <para><parameter>#EXIM_MONITOR</parameter>: This defers building the
170 <application>Exim</application> monitor program, as it requires
171 <application>X Window System</application> support, by commenting out the
172 <parameter>EXIM_MONITOR</parameter> line in the <filename>Makefile</filename>.
173 If you wish to build the monitor program, omit this <command>sed</command>
174 command and issue the following command before building the package (modify
175 <filename>Local/eximon.conf</filename>, if necessary):
176 <command>cp exim_monitor/EDITME Local/eximon.conf</command>.</para>
177
178 <para><command>ln -sv exim /usr/sbin/sendmail</command>: Creates a link to
179 <command>sendmail</command> for applications which need it.
180 <application>Exim</application> will accept most
181 <application>Sendmail</application> command-line options.</para>
182
183 </sect2>
184
185 <sect2 role="commands">
186 <title>Adding Additional Functionality</title>
187
188 <para>To utilize some or all of the dependency packages, you'll need to
189 modify <filename>Local/Makefile</filename> to include the appropriate
190 directives and parameters to link additional libraries before you build
191 <application>Exim</application>. <filename>Local/Makefile</filename> is
192 heavily commented with instructions on how to do this. Listed below is
193 additional information to help you link these dependency packages.</para>
194
195 <para>To use a backend database other than <application>Berkeley
196 DB</application>, see the instructions at <ulink
197 url="http://www.exim.org/exim-html-4.40/doc/html/spec_4.html#SECT4.3"/>.</para>
198
199 <para>For SSL functionality, see the instructions at <ulink
200 url="http://www.exim.org/exim-html-4.40/doc/html/spec_4.html#SECT4.6"/> and
201 <ulink
202 url="http://www.exim.org/exim-html-4.40/doc/html/spec_37.html#CHAP37"/>.</para>
203
204 <para>For <application>tcpwrappers</application> functionality, see the
205 instructions at <ulink
206 url="http://www.exim.org/exim-html-4.40/doc/html/spec_4.html#SECT4.7"/>.</para>
207
208 <para>For information about adding authentication mechanisms to the
209 build, see the instructions at <ulink
210 url="http://www.exim.org/exim-html-4.40/doc/html/spec_34.html#SECT34.4"/> For
211 specific information about using <application>Cyrus-SASL</application>, see
212 section 10 of the <filename>doc/NewStuff</filename> file located in the source
213 tree.</para>
214
215 <para>For information about linking <application>Linux-PAM</application>, see
216 the instructions at <ulink
217 url="http://www.exim.org/exim-html-4.40/doc/html/spec_11.html#IX935"/>.</para>
218
219 <para>For information about linking database engine libraries used for
220 <application>Exim</application> name lookups, see the instructions at <ulink
221 url="http://www.exim.org/exim-html-4.40/doc/html/spec_9.html#CHAP9"/>.</para>
222
223 <para>If you wish to add <application>Readline</application> support to
224 <application>Exim</application> when invoked in <quote>test expansion</quote>
225 (-bv) mode, see the information in section 8 of the
226 <filename>doc/NewStuff</filename> file located in the source tree.</para>
227
228 <para>You may wish to modify the default configuration and send log files to
229 syslog instead of the default
230 <filename class='directory'>/var/spool/exim/log</filename> directory. See the
231 information at <ulink
232 url="http://www.exim.org/exim-html-4.40/doc/html/spec_45.html#CHAP45"/>.</para>
233
234 </sect2>
235
236 <sect2 role="configuration">
237 <title>Configuring Exim</title>
238
239 <sect3 id="exim-config">
240 <title>Config Files</title>
241
242 <para><filename>/etc/exim.conf</filename> and
243 <filename>/etc/aliases</filename></para>
244
245 <indexterm zone="exim exim-config">
246 <primary sortas="e-etc-exim.conf">/etc/exim.conf</primary>
247 </indexterm>
248
249 <indexterm zone="exim exim-config">
250 <primary sortas="e-etc-aliases">/etc/aliases</primary>
251 </indexterm>
252
253 </sect3>
254
255 <sect3>
256 <title>Configuration Information</title>
257
258 <para>A default (nothing but comments) <filename>/etc/aliases</filename>
259 file is installed during the package installation if this file did not
260 exist on your system. Create the necessary aliases and start the
261 <application>Exim</application> daemon using the following commands:</para>
262
263<screen role="root"><userinput>cat &gt;&gt; /etc/aliases &lt;&lt; "EOF"
264<literal>postmaster: root
265MAILER-DAEMON: root</literal>
266EOF
267exim -v -bi &amp;&amp;
268/usr/sbin/exim -bd -q15m</userinput></screen>
269
270 <note>
271 <para>To protect an existing <filename>/etc/aliases</filename> file,
272 the command above appends these aliases to it. This file should be
273 checked and duplicate aliases removed, if present.</para>
274 </note>
275
276 <para>The <command>/usr/sbin/exim -bd -q15m</command> command starts
277 the <application>Exim</application> daemon with a 15 minute interval
278 in processing the mail queue. Adjust this parameter to suit your
279 desires.</para>
280
281 </sect3>
282
283 <sect3 id="exim-init">
284 <title>Boot Script</title>
285
286 <para>To automate the running of <command>exim</command> at startup,
287 install the <filename>/etc/rc.d/init.d/exim</filename> init script
288 included in the <xref linkend="bootscripts"/>
289 package.</para>
290
291 <indexterm zone="exim exim-init">
292 <primary sortas="f-exim">exim</primary>
293 </indexterm>
294
295<screen role="root"><userinput>make install-exim</userinput></screen>
296
297 <para>The bootscript also starts the <application>Exim</application>
298 daemon and dispatches a queue runner process every 15 minutes. Modify
299 the <option>-q<replaceable>&lt;time interval&gt;</replaceable></option>
300 parameter in <filename>/etc/rc.d/init.d/exim</filename>, if necessary
301 for your installation.</para>
302
303 </sect3>
304
305 </sect2>
306
307 <sect2 role="content">
308 <title>Contents</title>
309
310 <segmentedlist>
311 <segtitle>Installed Programs</segtitle>
312 <segtitle>Installed Libraries</segtitle>
313 <segtitle>Installed Directories</segtitle>
314
315 <seglistitem>
316 <seg>exicyclog, exigrep, exim, exim-4.43-2, exim_checkaccess,
317 exim_dbmbuild, exim_dumpdb, exim_fixdb, exim_lock, exim_tidydb,
318 eximstats, exinext, exipick, exiqgrep, exiqsumm, exiwhat, and
319 optionally, eximon, and eximon.bin</seg>
320 <seg>None</seg>
321 <seg>/usr/share/doc/exim-&exim-version; and /var/spool/exim</seg>
322 </seglistitem>
323 </segmentedlist>
324
325 <variablelist>
326 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
327 <?dbfo list-presentation="list"?>
328 <?dbhtml list-presentation="table"?>
329
330 <varlistentry id="exicyclog">
331 <term><command>exicyclog</command></term>
332 <listitem>
333 <para>cycles <application>Exim</application> log files.</para>
334 <indexterm zone="exim exicyclog">
335 <primary sortas="b-exicyclog">exicyclog</primary>
336 </indexterm>
337 </listitem>
338 </varlistentry>
339
340 <varlistentry id="exigrep">
341 <term><command>exigrep</command></term>
342 <listitem>
343 <para>searches <application>Exim</application> log files.</para>
344 <indexterm zone="exim exigrep">
345 <primary sortas="b-exigrep">exigrep</primary>
346 </indexterm>
347 </listitem>
348 </varlistentry>
349
350 <varlistentry id="exim-prog">
351 <term><command>exim</command></term>
352 <listitem>
353 <para>is a symlink to the <command>exim-4.43-2</command>
354 MTA daemon.</para>
355 <indexterm zone="exim exim-prog">
356 <primary sortas="g-exim">exim</primary>
357 </indexterm>
358 </listitem>
359 </varlistentry>
360
361 <varlistentry id="exim-4.43-2">
362 <term><command>exim-4.43-2</command></term>
363 <listitem>
364 <para>is the <application>Exim</application> mail transport
365 agent daemon.</para>
366 <indexterm zone="exim exim-4.43-2">
367 <primary sortas="b-exim-4.43-2">exim-4.43-2</primary>
368 </indexterm>
369 </listitem>
370 </varlistentry>
371
372 <varlistentry id="exim_checkaccess">
373 <term><command>exim_checkaccess</command></term>
374 <listitem>
375 <para>states whether a given recipient address from a given host is
376 acceptable or not.</para>
377 <indexterm zone="exim exim_checkaccess">
378 <primary sortas="b-exim_checkaccess">exim_checkaccess</primary>
379 </indexterm>
380 </listitem>
381 </varlistentry>
382
383 <varlistentry id="exim_dbmbuild">
384 <term><command>exim_dbmbuild</command></term>
385 <listitem>
386 <para> creates and rebuilds <application>Exim</application>
387 databases.</para>
388 <indexterm zone="exim exim_dbmbuild">
389 <primary sortas="b-exim_dbmbuild">exim_dbmbuild</primary>
390 </indexterm>
391 </listitem>
392 </varlistentry>
393
394 <varlistentry id="exim_dumpdb">
395 <term><command>exim_dumpdb</command></term>
396 <listitem>
397 <para> writes the contents of <application>Exim</application>
398 databases to the standard output.</para>
399 <indexterm zone="exim exim_dumpdb">
400 <primary sortas="b-exim_dumpdb">exim_dumpdb</primary>
401 </indexterm>
402 </listitem>
403 </varlistentry>
404
405 <varlistentry id="exim_fixdb">
406 <term><command>exim_fixdb</command></term>
407 <listitem>
408 <para>modifies data in <application>Exim</application>
409 databases.</para>
410 <indexterm zone="exim exim_fixdb">
411 <primary sortas="b-exim_fixdb">exim_fixdb</primary>
412 </indexterm>
413 </listitem>
414 </varlistentry>
415
416 <varlistentry id="exim_lock">
417 <term><command>exim_lock</command></term>
418 <listitem>
419 <para>locks a mailbox file.</para>
420 <indexterm zone="exim exim_lock">
421 <primary sortas="b-exim_lock">exim_lock</primary>
422 </indexterm>
423 </listitem>
424 </varlistentry>
425
426 <varlistentry id="exim_tidydb">
427 <term><command>exim_tidydb</command></term>
428 <listitem>
429 <para>removes old records from <application>Exim</application>
430 databases.</para>
431 <indexterm zone="exim exim_tidydb">
432 <primary sortas="b-exim_tidydb">exim_tidydb</primary>
433 </indexterm>
434 </listitem>
435 </varlistentry>
436
437 <varlistentry id="eximstats">
438 <term><command>eximstats</command></term>
439 <listitem>
440 <para>generates mail statistics from <application>Exim</application>
441 log files.</para>
442 <indexterm zone="exim eximstats">
443 <primary sortas="b-eximstats">eximstats</primary>
444 </indexterm>
445 </listitem>
446 </varlistentry>
447
448 <varlistentry id="exinext">
449 <term><command>exinext</command></term>
450 <listitem>
451 <para>queries remote host retry times.</para>
452 <indexterm zone="exim exinext">
453 <primary sortas="b-exinext">exinext</primary>
454 </indexterm>
455 </listitem>
456 </varlistentry>
457
458 <varlistentry id="exipick">
459 <term><command>exipick</command></term>
460 <listitem>
461 <para>selects messages based on various criteria.</para>
462 <indexterm zone="exim exipick">
463 <primary sortas="b-exipick">exipick</primary>
464 </indexterm>
465 </listitem>
466 </varlistentry>
467
468 <varlistentry id="exiqgrep">
469 <term><command>exiqgrep</command></term>
470 <listitem>
471 <para>is a utility for selective queue listing.</para>
472 <indexterm zone="exim exiqgrep">
473 <primary sortas="b-exiqgrep">exiqgrep</primary>
474 </indexterm>
475 </listitem>
476 </varlistentry>
477
478 <varlistentry id="exiqsumm">
479 <term><command>exiqsumm</command></term>
480 <listitem>
481 <para>produces a summary of the messages in the mail queue.</para>
482 <indexterm zone="exim exiqsumm">
483 <primary sortas="b-exiqsumm">exiqsumm</primary>
484 </indexterm>
485 </listitem>
486 </varlistentry>
487
488 <varlistentry id="exiwhat">
489 <term><command>exiwhat</command></term>
490 <listitem>
491 <para>queries running <application>Exim</application>
492 processes.</para>
493 <indexterm zone="exim exiwhat">
494 <primary sortas="b-exiwhat">exiwhat</primary>
495 </indexterm>
496 </listitem>
497 </varlistentry>
498
499 <varlistentry id="eximon">
500 <term><command>eximon</command></term>
501 <listitem>
502 <para>is a start-up shell script for <command>eximon.bin</command>
503 used to set the required environment variables before running the
504 program.</para>
505 <indexterm zone="exim eximon">
506 <primary sortas="b-eximon">eximon</primary>
507 </indexterm>
508 </listitem>
509 </varlistentry>
510
511 <varlistentry id="eximon.bin">
512 <term><command>eximon.bin</command></term>
513 <listitem>
514 <para>is a monitor program which displays current information in an
515 <application>X</application> window, and also contains a menu interface
516 to <application>Exim</application>'s command line administration
517 options.</para>
518 <indexterm zone="exim eximon.bin">
519 <primary sortas="b-eximon.bin">eximon.bin</primary>
520 </indexterm>
521 </listitem>
522 </varlistentry>
523
524 </variablelist>
525
526 </sect2>
527
528</sect1>
Note: See TracBrowser for help on using the repository browser.