source: server/mail/exim.xml@ 21755bc

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 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 21755bc was 21755bc, checked in by Randy McMurchy <randy@…>, 17 years ago

Fixed more broken download URLs, added a note to the Gaim instructions that the package is now called Pidgin, added a test suite note to the Sudo instructions

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

  • Property mode set to 100644
File size: 19.8 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!-- <!ENTITY exim-download-http "http://www.exim.org/ftp/exim4/exim-&exim-version;.tar.bz2"> -->
8 <!-- <!ENTITY exim-download-ftp "ftp://ftp.exim.org/pub/exim/exim4/exim-&exim-version;.tar.bz2"> -->
9 <!ENTITY exim-download-http "http://anduin.linuxfromscratch.org/sources/BLFS/svn/e/exim-&exim-version;.tar.bz2">
10 <!ENTITY exim-download-ftp " ">
11 <!ENTITY exim-md5sum "f6bbf99a6f63c0f5045a1779e7e810c4">
12 <!ENTITY exim-size "1.5 MB">
13 <!ENTITY exim-buildsize "14.5 MB">
14 <!ENTITY exim-time "0.2 SBU">
15 <!-- <!ENTITY exim-online-doc-version "4.61"> -->
16]>
17
18 <!-- Editors please ensure that the documentation links below (in the
19 'Adding Additional Functionality' section) are still valid after you
20 update a version entity. It appears that the "id" strings in some of
21 the URLs below change between versions. And I don't think this can
22 be automatically updated.
23 -->
24
25<sect1 id="exim" xreflabel="Exim-&exim-version;">
26 <?dbhtml filename="exim.html"?>
27
28 <sect1info>
29 <othername>$LastChangedBy$</othername>
30 <date>$Date$</date>
31 </sect1info>
32
33 <title>Exim-&exim-version;</title>
34
35 <indexterm zone="exim">
36 <primary sortas="a-Exim">Exim</primary>
37 </indexterm>
38
39 <sect2 role="package">
40 <title>Introduction to Exim</title>
41
42 <para>The <application>Exim</application> package contains a Mail
43 Transport Agent written by the University of Cambridge, released
44 under the GNU Public License.</para>
45
46 <bridgehead renderas="sect3">Package Information</bridgehead>
47 <itemizedlist spacing="compact">
48 <listitem>
49 <para>Download (HTTP): <ulink url="&exim-download-http;"/></para>
50 </listitem>
51 <listitem>
52 <para>Download (FTP): <ulink url="&exim-download-ftp;"/></para>
53 </listitem>
54 <listitem>
55 <para>Download MD5 sum: &exim-md5sum;</para>
56 </listitem>
57 <listitem>
58 <para>Download size: &exim-size;</para>
59 </listitem>
60 <listitem>
61 <para>Estimated disk space required: &exim-buildsize;</para>
62 </listitem>
63 <listitem>
64 <para>Estimated build time: &exim-time;</para>
65 </listitem>
66 </itemizedlist>
67
68 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
69 <itemizedlist spacing="compact">
70 <!-- <listitem>
71 <para>Required patch for Berkeley DB: <ulink
72 url="&patch-root;/exim-&exim-version;-db43-1.patch"/></para>
73 </listitem> -->
74 <listitem>
75 <para>Additional formats of the documentation (text-based docs are
76 shipped with the sources) can be downloaded by following the links
77 shown at <ulink url="http://exim.org/docs.html"/>.</para>
78 </listitem>
79 </itemizedlist>
80
81 <bridgehead renderas="sect3">Exim Dependencies</bridgehead>
82
83 <bridgehead renderas="sect4">Required</bridgehead>
84 <para role="required"><xref linkend="db"/> (built in LFS) or
85 <!-- <xref linkend="db"/> -->
86 <xref linkend="gdbm"/> or
87 <ulink url="http://sourceforge.net/projects/tdb">TDB</ulink></para>
88
89 <bridgehead renderas="sect4">Optional</bridgehead>
90 <para role="optional"><xref linkend="x-window-system"/>,
91 <xref linkend="openldap"/>,
92 <xref linkend="openssl"/> or
93 <ulink url="http://www.gnu.org/software/gnutls/">GnuTLS</ulink>,
94 <xref linkend="cyrus-sasl"/>,
95 <xref linkend="mysql"/>,
96 <xref linkend="postgresql"/>,
97 <xref linkend="tcpwrappers"/>, and
98 <xref linkend="linux-pam"/></para>
99
100 <para condition="html" role="usernotes">User Notes:
101 <ulink url="&blfs-wiki;/exim"/></para>
102
103 </sect2>
104
105 <sect2 role="installation">
106 <title>Installation of Exim</title>
107
108 <para>Before building <application>Exim</application>, as the
109 <systemitem class="username">root</systemitem> user you should create
110 the group and user <systemitem class="username">exim</systemitem> which
111 will run the <command>exim</command> daemon:</para>
112
113<screen role="root"><userinput>groupadd -g 31 exim &amp;&amp;
114useradd -d /dev/null -c "Exim Daemon" -g exim -s /bin/false -u 31 exim</userinput></screen>
115
116 <!-- Commenting this out as BDB is installed in LFS
117
118 <para>If you have <application>Berkeley DB</application>
119 installed, apply the following patch:</para>
120
121<screen><userinput>patch -Np1 -i ../exim-&exim-version;-db43-1.patch</userinput></screen>
122
123 -->
124
125 <para>Install <application>Exim</application> with the following
126 commands:</para>
127
128<screen><userinput>sed -e 's,^BIN_DIR.*$,BIN_DIRECTORY=/usr/sbin,' \
129 -e 's,^CONF.*$,CONFIGURE_FILE=/etc/exim.conf,' \
130 -e 's,^EXIM_USER.*$,EXIM_USER=exim,' \
131 -e 's,^EXIM_MONITOR,#EXIM_MONITOR,' src/EDITME > Local/Makefile &amp;&amp;
132make</userinput></screen>
133
134 <para>This package does not come with a test suite.</para>
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://exim.org/exim-html-&exim-version;/doc/html/spec_html/ch04.html#SECTdb"/>.
198 </para>
199
200 <para>For SSL functionality, see the instructions at <ulink
201 url="http://exim.org/exim-html-&exim-version;/doc/html/spec_html/ch04.html#SECTinctlsssl"/>
202 and <ulink
203 url="http://exim.org/exim-html-&exim-version;/doc/html/spec_html/ch38.html"/>.
204 </para>
205
206 <para>For <application>tcpwrappers</application> functionality, see the
207 instructions at <ulink
208 url="http://exim.org/exim-html-&exim-version;/doc/html/spec_html/ch04.html#id2522928"/>.
209 http://exim.org/exim-html-4.61/doc/html/spec_html/ch04.html#id2522928
210 </para>
211
212 <para>For information about adding authentication mechanisms to the
213 build, see chapters 33-37 of <ulink
214 url="http://exim.org/exim-html-&exim-version;/doc/html/spec_html/index.html"/>.
215 </para>
216
217 <para>For information about linking <application>Linux-PAM</application>, see
218 the instructions in section 7 of <ulink
219 url="http://exim.org/exim-html-&exim-version;/doc/html/spec_html/ch11.html"/>.
220 </para>
221
222 <para>For information about linking database engine libraries used for
223 <application>Exim</application> name lookups, see the instructions at <ulink
224 url="http://exim.org/exim-html-&exim-version;/doc/html/spec_html/ch09.html"/>.
225 </para>
226
227 <para>If you wish to add <application>Readline</application> support to
228 <application>Exim</application> when invoked in <quote>test expansion</quote>
229 (<option>-be</option>) mode, see the information in the <option>-be</option>
230 section of <ulink
231 url="http://exim.org/exim-html-&exim-version;/doc/html/spec_html/ch05.html#id2525974"/>.
232 </para>
233
234 <para>You may wish to modify the default configuration and send log files to
235 syslog instead of the default
236 <filename class='directory'>/var/spool/exim/log</filename> directory. See the
237 information at <ulink
238 url="http://exim.org/exim-html-&exim-version;/doc/html/spec_html/ch48.html"/>.</para>
239
240 </sect2>
241
242 <sect2 role="configuration">
243 <title>Configuring Exim</title>
244
245 <sect3 id="exim-config">
246 <title>Config Files</title>
247
248 <para><filename>/etc/exim.conf</filename> and
249 <filename>/etc/aliases</filename></para>
250
251 <indexterm zone="exim exim-config">
252 <primary sortas="e-etc-exim.conf">/etc/exim.conf</primary>
253 </indexterm>
254
255 <indexterm zone="exim exim-config">
256 <primary sortas="e-etc-aliases">/etc/aliases</primary>
257 </indexterm>
258
259 </sect3>
260
261 <sect3>
262 <title>Configuration Information</title>
263
264 <para>A default (nothing but comments) <filename>/etc/aliases</filename>
265 file is installed during the package installation if this file did not
266 exist on your system. Create the necessary aliases and start the
267 <application>Exim</application> daemon using the following commands:</para>
268
269<screen role="root"><userinput>cat &gt;&gt; /etc/aliases &lt;&lt; "EOF"
270<literal>postmaster: root
271MAILER-DAEMON: root</literal>
272EOF
273exim -v -bi &amp;&amp;
274/usr/sbin/exim -bd -q15m</userinput></screen>
275
276 <note>
277 <para>To protect an existing <filename>/etc/aliases</filename> file,
278 the command above appends these aliases to it. This file should be
279 checked and duplicate aliases removed, if present.</para>
280 </note>
281
282 <para>The <command>/usr/sbin/exim -bd -q15m</command> command starts
283 the <application>Exim</application> daemon with a 15 minute interval
284 in processing the mail queue. Adjust this parameter to suit your
285 desires.</para>
286
287 </sect3>
288
289 <sect3 id="exim-init">
290 <title>Boot Script</title>
291
292 <para>To automate the running of <command>exim</command> at startup,
293 install the <filename>/etc/rc.d/init.d/exim</filename> init script
294 included in the <xref linkend="bootscripts"/>
295 package.</para>
296
297 <indexterm zone="exim exim-init">
298 <primary sortas="f-exim">exim</primary>
299 </indexterm>
300
301<screen role="root"><userinput>make install-exim</userinput></screen>
302
303 <para>The bootscript also starts the <application>Exim</application>
304 daemon and dispatches a queue runner process every 15 minutes. Modify
305 the <option>-q<replaceable>&lt;time interval&gt;</replaceable></option>
306 parameter in <filename>/etc/rc.d/init.d/exim</filename>, if necessary
307 for your installation.</para>
308
309 </sect3>
310
311 </sect2>
312
313 <sect2 role="content">
314 <title>Contents</title>
315
316 <segmentedlist>
317 <segtitle>Installed Programs</segtitle>
318 <segtitle>Installed Libraries</segtitle>
319 <segtitle>Installed Directories</segtitle>
320
321 <seglistitem>
322 <seg>exicyclog, exigrep, exim, exim-4.43-2, exim_checkaccess,
323 exim_dbmbuild, exim_dumpdb, exim_fixdb, exim_lock, exim_tidydb,
324 eximstats, exinext, exipick, exiqgrep, exiqsumm, exiwhat, and
325 optionally, eximon, and eximon.bin</seg>
326 <seg>None</seg>
327 <seg>/usr/share/doc/exim-&exim-version; and /var/spool/exim</seg>
328 </seglistitem>
329 </segmentedlist>
330
331 <variablelist>
332 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
333 <?dbfo list-presentation="list"?>
334 <?dbhtml list-presentation="table"?>
335
336 <varlistentry id="exicyclog">
337 <term><command>exicyclog</command></term>
338 <listitem>
339 <para>cycles <application>Exim</application> log files.</para>
340 <indexterm zone="exim exicyclog">
341 <primary sortas="b-exicyclog">exicyclog</primary>
342 </indexterm>
343 </listitem>
344 </varlistentry>
345
346 <varlistentry id="exigrep">
347 <term><command>exigrep</command></term>
348 <listitem>
349 <para>searches <application>Exim</application> log files.</para>
350 <indexterm zone="exim exigrep">
351 <primary sortas="b-exigrep">exigrep</primary>
352 </indexterm>
353 </listitem>
354 </varlistentry>
355
356 <varlistentry id="exim-prog">
357 <term><command>exim</command></term>
358 <listitem>
359 <para>is a symlink to the <command>exim-4.43-2</command>
360 MTA daemon.</para>
361 <indexterm zone="exim exim-prog">
362 <primary sortas="g-exim">exim</primary>
363 </indexterm>
364 </listitem>
365 </varlistentry>
366
367 <varlistentry id="exim-4.43-2">
368 <term><command>exim-4.43-2</command></term>
369 <listitem>
370 <para>is the <application>Exim</application> mail transport
371 agent daemon.</para>
372 <indexterm zone="exim exim-4.43-2">
373 <primary sortas="b-exim-4.43-2">exim-4.43-2</primary>
374 </indexterm>
375 </listitem>
376 </varlistentry>
377
378 <varlistentry id="exim_checkaccess">
379 <term><command>exim_checkaccess</command></term>
380 <listitem>
381 <para>states whether a given recipient address from a given host is
382 acceptable or not.</para>
383 <indexterm zone="exim exim_checkaccess">
384 <primary sortas="b-exim_checkaccess">exim_checkaccess</primary>
385 </indexterm>
386 </listitem>
387 </varlistentry>
388
389 <varlistentry id="exim_dbmbuild">
390 <term><command>exim_dbmbuild</command></term>
391 <listitem>
392 <para> creates and rebuilds <application>Exim</application>
393 databases.</para>
394 <indexterm zone="exim exim_dbmbuild">
395 <primary sortas="b-exim_dbmbuild">exim_dbmbuild</primary>
396 </indexterm>
397 </listitem>
398 </varlistentry>
399
400 <varlistentry id="exim_dumpdb">
401 <term><command>exim_dumpdb</command></term>
402 <listitem>
403 <para> writes the contents of <application>Exim</application>
404 databases to the standard output.</para>
405 <indexterm zone="exim exim_dumpdb">
406 <primary sortas="b-exim_dumpdb">exim_dumpdb</primary>
407 </indexterm>
408 </listitem>
409 </varlistentry>
410
411 <varlistentry id="exim_fixdb">
412 <term><command>exim_fixdb</command></term>
413 <listitem>
414 <para>modifies data in <application>Exim</application>
415 databases.</para>
416 <indexterm zone="exim exim_fixdb">
417 <primary sortas="b-exim_fixdb">exim_fixdb</primary>
418 </indexterm>
419 </listitem>
420 </varlistentry>
421
422 <varlistentry id="exim_lock">
423 <term><command>exim_lock</command></term>
424 <listitem>
425 <para>locks a mailbox file.</para>
426 <indexterm zone="exim exim_lock">
427 <primary sortas="b-exim_lock">exim_lock</primary>
428 </indexterm>
429 </listitem>
430 </varlistentry>
431
432 <varlistentry id="exim_tidydb">
433 <term><command>exim_tidydb</command></term>
434 <listitem>
435 <para>removes old records from <application>Exim</application>
436 databases.</para>
437 <indexterm zone="exim exim_tidydb">
438 <primary sortas="b-exim_tidydb">exim_tidydb</primary>
439 </indexterm>
440 </listitem>
441 </varlistentry>
442
443 <varlistentry id="eximstats">
444 <term><command>eximstats</command></term>
445 <listitem>
446 <para>generates mail statistics from <application>Exim</application>
447 log files.</para>
448 <indexterm zone="exim eximstats">
449 <primary sortas="b-eximstats">eximstats</primary>
450 </indexterm>
451 </listitem>
452 </varlistentry>
453
454 <varlistentry id="exinext">
455 <term><command>exinext</command></term>
456 <listitem>
457 <para>queries remote host retry times.</para>
458 <indexterm zone="exim exinext">
459 <primary sortas="b-exinext">exinext</primary>
460 </indexterm>
461 </listitem>
462 </varlistentry>
463
464 <varlistentry id="exipick">
465 <term><command>exipick</command></term>
466 <listitem>
467 <para>selects messages based on various criteria.</para>
468 <indexterm zone="exim exipick">
469 <primary sortas="b-exipick">exipick</primary>
470 </indexterm>
471 </listitem>
472 </varlistentry>
473
474 <varlistentry id="exiqgrep">
475 <term><command>exiqgrep</command></term>
476 <listitem>
477 <para>is a utility for selective queue listing.</para>
478 <indexterm zone="exim exiqgrep">
479 <primary sortas="b-exiqgrep">exiqgrep</primary>
480 </indexterm>
481 </listitem>
482 </varlistentry>
483
484 <varlistentry id="exiqsumm">
485 <term><command>exiqsumm</command></term>
486 <listitem>
487 <para>produces a summary of the messages in the mail queue.</para>
488 <indexterm zone="exim exiqsumm">
489 <primary sortas="b-exiqsumm">exiqsumm</primary>
490 </indexterm>
491 </listitem>
492 </varlistentry>
493
494 <varlistentry id="exiwhat">
495 <term><command>exiwhat</command></term>
496 <listitem>
497 <para>queries running <application>Exim</application>
498 processes.</para>
499 <indexterm zone="exim exiwhat">
500 <primary sortas="b-exiwhat">exiwhat</primary>
501 </indexterm>
502 </listitem>
503 </varlistentry>
504
505 <varlistentry id="eximon">
506 <term><command>eximon</command></term>
507 <listitem>
508 <para>is a start-up shell script for <command>eximon.bin</command>
509 used to set the required environment variables before running the
510 program.</para>
511 <indexterm zone="exim eximon">
512 <primary sortas="b-eximon">eximon</primary>
513 </indexterm>
514 </listitem>
515 </varlistentry>
516
517 <varlistentry id="eximon.bin">
518 <term><command>eximon.bin</command></term>
519 <listitem>
520 <para>is a monitor program which displays current information in an
521 <application>X</application> window, and also contains a menu interface
522 to <application>Exim</application>'s command line administration
523 options.</para>
524 <indexterm zone="exim eximon.bin">
525 <primary sortas="b-eximon.bin">eximon.bin</primary>
526 </indexterm>
527 </listitem>
528 </varlistentry>
529
530 </variablelist>
531
532 </sect2>
533
534</sect1>
Note: See TracBrowser for help on using the repository browser.