network/exim: Added. exim is a sendmail replacement.
This commit is contained in:
parent
669ea352d9
commit
ffd9716826
|
@ -0,0 +1,25 @@
|
|||
Exim is a mail transfer agent (MTA) used on Unix-like operating systems.
|
||||
It is freely available under the GNU GPL and it aims to be a general
|
||||
and flexible mailer with extensive facilities for checking incoming e-mail.
|
||||
|
||||
Exim was orginally written by Philip Hazel for use in the University
|
||||
of Cambridge Computing Services e-mail systems.
|
||||
|
||||
Before you can build Exim, you have to create an "exim" user and group:
|
||||
# groupadd -g 222 exim
|
||||
# useradd -d /var/spool/exim -g exim -s /bin/false -u 222 exim
|
||||
The recommended uid/gid is 222, but others are fine if you prefer -
|
||||
see http://slackbuilds.org/uid_gid.txt for other recommendations.
|
||||
|
||||
There's no "configure" script; instead Exim is configured by editing a well
|
||||
documented Makefile, which is then included during the build process. The
|
||||
provided "exim.Makefile" will build an all-purpose Exim daemon with almost
|
||||
all of the features that will work on a standard Slackware system.
|
||||
|
||||
Exim can be integrated with other email tools such as Clamav, Spamassassin,
|
||||
Bogofilter, and others available at Slackbuilds.org. You might also be
|
||||
interested in the "exim-html" package, an extensive documentation for Exim.
|
||||
|
||||
WARNING: this package is intended as a drop-in replacement for Sendmail.
|
||||
As a result, there are some inevitable filename conflicts between Sendmail
|
||||
and Exim. REMOVE SENDMAIL BEFORE INSTALLING THIS PACKAGE!
|
|
@ -0,0 +1,12 @@
|
|||
#!/bin/sh
|
||||
|
||||
# Exim's spool directory
|
||||
SPOOL=/var/spool/exim
|
||||
|
||||
# Check for spool and the tidydb utility
|
||||
test -d $SPOOL -a -x /usr/sbin/exim_tidydb || exit
|
||||
|
||||
# Tidy up the contents of the hints databases
|
||||
find $SPOOL/db -name '*.lockfile' -exec basename {} .lockfile \; \
|
||||
| xargs -r -n 1 sudo -u exim /usr/sbin/exim_tidydb -t 7d $SPOOL \
|
||||
> /dev/null
|
|
@ -0,0 +1,8 @@
|
|||
/var/log/exim/*.log {
|
||||
missingok
|
||||
notifempty
|
||||
sharedscripts
|
||||
postrotate
|
||||
/usr/bin/pkill -HUP -u exim
|
||||
endscript
|
||||
}
|
|
@ -0,0 +1,62 @@
|
|||
#!/bin/sh
|
||||
|
||||
# /etc/rc.d/rc.exim - start/stop/restart the exim mail transfer agent.
|
||||
#
|
||||
# Thales A. Tsailas <ttsailas@enforcingit.com>
|
||||
# Thomas Morper <thomas@beingboiled.info>
|
||||
|
||||
PIDFILE=/var/run/exim.pid
|
||||
|
||||
# the TIME option causes Exim to run as a daemon, starting a queue runner
|
||||
# process at intervals specified by the given time value. (ie 5m, 1h etc).
|
||||
TIME=15m
|
||||
|
||||
exim_start() {
|
||||
echo "Starting exim..."
|
||||
/usr/sbin/exim -bd ${TIME:+-q$TIME}
|
||||
}
|
||||
|
||||
exim_stop() {
|
||||
echo "Shutting down exim..."
|
||||
killall exim
|
||||
rm -f $PIDFILE
|
||||
}
|
||||
|
||||
exim_reload() {
|
||||
echo "Reloading exim configuration..."
|
||||
if [ -f $PIDFILE ]; then
|
||||
kill -HUP $(cat $PIDFILE)
|
||||
fi
|
||||
}
|
||||
|
||||
exim_status() {
|
||||
if [ -f /var/run/exim.pid ]; then
|
||||
echo "exim is running...";
|
||||
else
|
||||
echo "exim is not running...";
|
||||
fi
|
||||
}
|
||||
|
||||
# See how we were called.
|
||||
case "$1" in
|
||||
start)
|
||||
exim_start
|
||||
;;
|
||||
stop)
|
||||
exim_stop
|
||||
;;
|
||||
restart)
|
||||
exim_stop
|
||||
sleep 2
|
||||
exim_start
|
||||
;;
|
||||
reload)
|
||||
exim_reload
|
||||
;;
|
||||
status)
|
||||
exim_status
|
||||
;;
|
||||
*)
|
||||
echo $"Usage: $0 {start|stop|restart|reload|status}"
|
||||
;;
|
||||
esac
|
|
@ -0,0 +1,28 @@
|
|||
config() {
|
||||
NEW="$1"
|
||||
OLD="$(dirname $NEW)/$(basename $NEW .new)"
|
||||
# If there's no config file by that name, mv it over:
|
||||
if [ ! -r $OLD ]; then
|
||||
mv $NEW $OLD
|
||||
elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
|
||||
# toss the redundant copy
|
||||
rm $NEW
|
||||
fi
|
||||
# Otherwise, we leave the .new copy for the admin to consider...
|
||||
}
|
||||
|
||||
preserve_perms() {
|
||||
NEW="$1"
|
||||
OLD="$(dirname ${NEW})/$(basename ${NEW} .new)"
|
||||
if [ -e ${OLD} ]; then
|
||||
cp -a ${OLD} ${NEW}.incoming
|
||||
cat ${NEW} > ${NEW}.incoming
|
||||
mv ${NEW}.incoming ${NEW}
|
||||
fi
|
||||
config ${NEW}
|
||||
}
|
||||
|
||||
config etc/cron.daily/exim.new
|
||||
config etc/logrotate.d/exim.new
|
||||
preserve_perms etc/rc.d/rc.exim.new
|
||||
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,116 @@
|
|||
#!/bin/sh
|
||||
|
||||
# Slackware build script for Exim
|
||||
|
||||
# Written by Thomas Morper <thomas@beingboiled.info>
|
||||
# Thanks to Thales A. Tsailas <ttsailas@enforcingit.com> and the SBo team
|
||||
# for the previous version and the accompanying files.
|
||||
# Thanks to Debian for the manpages.
|
||||
|
||||
PRGNAM=exim
|
||||
VERSION=${VERSION:-4.71}
|
||||
ARCH=${ARCH:-i486}
|
||||
BUILD=${BUILD:-1}
|
||||
TAG=${TAG:-_SBo}
|
||||
|
||||
CWD=$(pwd)
|
||||
TMP=${TMP:-/tmp/SBo}
|
||||
PKG=$TMP/package-$PRGNAM
|
||||
OUTPUT=${OUTPUT:-/tmp}
|
||||
|
||||
if [ "$ARCH" = "i486" ]; then
|
||||
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
|
||||
LIBDIRSUFFIX=""
|
||||
elif [ "$ARCH" = "i686" ]; then
|
||||
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
|
||||
LIBDIRSUFFIX=""
|
||||
elif [ "$ARCH" = "x86_64" ]; then
|
||||
SLKCFLAGS="-O2 -fPIC"
|
||||
LIBDIRSUFFIX="64"
|
||||
else
|
||||
SLKCFLAGS="-O2"
|
||||
LIBDIRSUFFIX=""
|
||||
fi
|
||||
|
||||
set -e
|
||||
|
||||
# Check if the exim user and group exist. If not, then bail.
|
||||
if [ "$(id -g exim 2> /dev/null)" != "222" -o "$(id -u exim 2> /dev/null)" != "222" ]; then
|
||||
echo " You must have an 'exim' user and group to run this script."
|
||||
echo " # groupadd -g 222 exim"
|
||||
echo " # useradd -d /var/spool/exim -g exim -s /bin/false -u 222 exim"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
rm -rf $PKG
|
||||
mkdir -p $TMP $PKG $OUTPUT
|
||||
cd $TMP
|
||||
rm -rf $PRGNAM-$VERSION
|
||||
tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
|
||||
cd $PRGNAM-$VERSION
|
||||
chown -R root:root .
|
||||
find . \
|
||||
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
|
||||
-exec chmod 755 {} \; -o \
|
||||
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
|
||||
-exec chmod 644 {} \;
|
||||
|
||||
cat $CWD/exim.Makefile > Local/Makefile
|
||||
cat exim_monitor/EDITME > Local/eximon.conf
|
||||
|
||||
make \
|
||||
CFLAGS="$SLKCFLAGS -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE" \
|
||||
LIBDIRSUFFIX=$LIBDIRSUFFIX
|
||||
make install DESTDIR=$PKG
|
||||
|
||||
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
|
||||
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
|
||||
|
||||
# Ditch the symlink and move the binary to its final destination.
|
||||
rm -f $PKG/usr/sbin/exim
|
||||
mv $PKG/usr/sbin/exim-$VERSION-1 $PKG/usr/sbin/exim
|
||||
|
||||
# Additional symlinks provide compatibility with sendmail
|
||||
mkdir -p $PKG/usr/lib # no LIBDIRSUFFIX here!
|
||||
( cd $PKG/usr/lib; ln -s /usr/sbin/exim sendmail )
|
||||
( cd $PKG/usr/sbin; ln -s /usr/sbin/exim sendmail )
|
||||
|
||||
# Nobody should use an unedited default config.
|
||||
mv $PKG/etc/exim/exim.conf $PKG/etc/exim/exim.conf.example
|
||||
mv $PKG/etc/exim/aliases $PKG/etc/exim/aliases.example
|
||||
|
||||
# Install accompanying scripts and configs.
|
||||
mkdir -p $PKG/etc/{cron.daily,logrotate.d,rc.d}
|
||||
install -m 0755 $CWD/contrib/rc.exim.new $PKG/etc/rc.d/rc.exim.new
|
||||
install -m 0755 $CWD/contrib/exim.cron $PKG/etc/cron.daily/exim.new
|
||||
install -m 0644 $CWD/contrib/exim.logrotate $PKG/etc/logrotate.d/exim.new
|
||||
|
||||
# Prepare log- and spool-directories.
|
||||
mkdir -p $PKG/var/log/exim
|
||||
mkdir -p -m 0750 $PKG/var/spool/exim/
|
||||
mkdir -p -m 0750 $PKG/var/spool/exim/{db,input,msglog}
|
||||
chown -R exim.exim $PKG/var/{log,spool}/exim
|
||||
|
||||
# Install the various manpages
|
||||
mkdir -p $PKG/usr/man/man8
|
||||
mv doc/exim.8 $PKG/usr/man/man8/
|
||||
install -m 0644 $CWD/manpages/*.8 $PKG/usr/man/man8/
|
||||
find $PKG/usr/man/man8 -type f -exec gzip -9 {} \;
|
||||
( cd $PKG/usr/man/man8
|
||||
ln -s exim_db.8.gz exim_dumpdb.8.gz
|
||||
ln -s exim_db.8.gz exim_fixdb.8.gz
|
||||
ln -s exim_db.8.gz exim_tidydb.8.gz
|
||||
)
|
||||
|
||||
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
|
||||
cp -a \
|
||||
ABOUT ACKNOWLEDGMENTS CHANGES LICENCE NOTICE README* doc \
|
||||
$PKG/usr/doc/$PRGNAM-$VERSION
|
||||
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
|
||||
|
||||
mkdir -p $PKG/install
|
||||
cat $CWD/slack-desc > $PKG/install/slack-desc
|
||||
cat $CWD/doinst.sh > $PKG/install/doinst.sh
|
||||
|
||||
cd $PKG
|
||||
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
|
|
@ -0,0 +1,10 @@
|
|||
PRGNAM="exim"
|
||||
VERSION="4.71"
|
||||
HOMEPAGE="http://www.exim.org/"
|
||||
DOWNLOAD="ftp://ftp.exim.org/pub/exim/exim4/exim-4.71.tar.bz2"
|
||||
MD5SUM="f9c5a2d94b5bb132d06e2fff85bef75e"
|
||||
DOWNLOAD_x86_64=""
|
||||
MD5SUM_x86_64=""
|
||||
MAINTAINER="Thomas Morper"
|
||||
EMAIL="thomas@beingboiled.info"
|
||||
APPROVED="rworkman"
|
|
@ -0,0 +1,74 @@
|
|||
.\" Hey, EMACS: -*- nroff -*-
|
||||
.\" First parameter, NAME, should be all caps
|
||||
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
|
||||
.\" other parameters are allowed: see man(7), man(1)
|
||||
.TH EXICYCLOG 8 "March 26, 2003"
|
||||
.\" Please adjust this date whenever revising the manpage.
|
||||
.\"
|
||||
.\" Some roff macros, for reference:
|
||||
.\" .nh disable hyphenation
|
||||
.\" .hy enable hyphenation
|
||||
.\" .ad l left justify
|
||||
.\" .ad b justify to both left and right margins
|
||||
.\" .nf disable filling
|
||||
.\" .fi enable filling
|
||||
.\" .br insert line break
|
||||
.\" .sp <n> insert n+1 empty lines
|
||||
.\" for manpage-specific macros, see man(7)
|
||||
.\" \(oqthis text is enclosed in single quotes\(cq
|
||||
.\" \(lqthis text is enclosed in double quotes\(rq
|
||||
.SH NAME
|
||||
exicyclog \- Cycle exim's logfiles
|
||||
.SH SYNOPSIS
|
||||
.B eximcyclog
|
||||
.SH DESCRIPTION
|
||||
The
|
||||
.B exicyclog
|
||||
script can be used to cycle (rotate)
|
||||
.I mainlog
|
||||
and
|
||||
.I rejectlog
|
||||
files.
|
||||
This is not necessary if only syslog is being used.
|
||||
Some operating systems have their own standard mechanisms for log cycling,
|
||||
and these can be used instead of
|
||||
.B exicyclog
|
||||
if preferred.
|
||||
|
||||
Each time
|
||||
.B exicyclog
|
||||
is run the file names get \(oqshuffled down\(cq by one.
|
||||
If the main log file name is mainlog (the default) then when
|
||||
.B exicyclog
|
||||
is run mainlog becomes mainlog.01, the previous mainlog.01 becomes mainlog.02
|
||||
and so on, up to a limit which is set in the script, and which defaults to 10.
|
||||
Reject logs are handled similarly.
|
||||
|
||||
If no mainlog file exists, the script does nothing.
|
||||
Files that \(oqdrop off\(cq the end are deleted.
|
||||
All files with numbers greater than 01 are compressed, using a compression
|
||||
command which is configured by the COMPRESS_COMMAND setting in
|
||||
Local/Makefile.
|
||||
It is usual to run \(lqexicyclog\(rq daily from a root \(lqcrontab\(rq entry
|
||||
of the form
|
||||
|
||||
1 0 * * * su exim \-c /usr/exim/bin/exicyclog
|
||||
|
||||
assuming you have used the name \(oqexim\(cq for the Exim user.
|
||||
You can run
|
||||
.B exicyclog
|
||||
as root if you wish, but there is no need.
|
||||
|
||||
|
||||
.SH BUGS
|
||||
This manual page needs a major re-work. If somebody knows better groff
|
||||
than us and has more experience in writing manual pages, any patches
|
||||
would be greatly appreciated.
|
||||
|
||||
.SH SEE ALSO
|
||||
.BR exim (8)
|
||||
|
||||
.SH AUTHOR
|
||||
This manual page was stitched together from spec.txt by
|
||||
Andreas Metzler <ametzler at downhill.at.eu.org>,
|
||||
for the Debian GNU/Linux system (but may be used by others).
|
|
@ -0,0 +1,69 @@
|
|||
.\" Hey, EMACS: -*- nroff -*-
|
||||
.\" First parameter, NAME, should be all caps
|
||||
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
|
||||
.\" other parameters are allowed: see man(7), man(1)
|
||||
.TH EXIGREP 8 "March 26, 2003"
|
||||
.\" Please adjust this date whenever revising the manpage.
|
||||
.\"
|
||||
.\" Some roff macros, for reference:
|
||||
.\" .nh disable hyphenation
|
||||
.\" .hy enable hyphenation
|
||||
.\" .ad l left justify
|
||||
.\" .ad b justify to both left and right margins
|
||||
.\" .nf disable filling
|
||||
.\" .fi enable filling
|
||||
.\" .br insert line break
|
||||
.\" .sp <n> insert n+1 empty lines
|
||||
.\" for manpage-specific macros, see man(7)
|
||||
.\" \(oqthis text is enclosed in single quotes\(cq
|
||||
.\" \(lqthis text is enclosed in double quotes\(rq
|
||||
.SH NAME
|
||||
EXIGREP \- Search Exim's main log
|
||||
.SH SYNOPSIS
|
||||
.B exigrep
|
||||
.I [\-l] pattern [log file] ...
|
||||
|
||||
.SH DESCRIPTION
|
||||
The
|
||||
.B exigrep
|
||||
utility is a Perl script that searches one or more main log files for
|
||||
entries that match a given pattern.
|
||||
When it finds a match, it extracts all the log entries for the relevant
|
||||
message, not just those that match the pattern.
|
||||
Thus,
|
||||
.B exigrep
|
||||
can extract complete log entries for a given message, or all mail for a given
|
||||
user, or for a given host, for example.
|
||||
|
||||
The
|
||||
.I \-l
|
||||
flag means \(oqliteral\(cq, that is, treat all characters in the pattern as
|
||||
standing for themselves.
|
||||
Otherwise the pattern must be a Perl regular expression.
|
||||
The pattern match is case-insensitive.
|
||||
If no file names are given on the command line, the standard input is
|
||||
read.
|
||||
|
||||
If the location of a
|
||||
.B zcat
|
||||
command is known from the definition of ZCAT_COMMAND in Local/Makefile,
|
||||
.B exigrep
|
||||
automatically passes any file whose
|
||||
name ends in COMPRESS_SUFFIX through
|
||||
.B zcat
|
||||
as it searches it.
|
||||
|
||||
.SH BUGS
|
||||
This manual page needs a major re-work. If somebody knows better groff
|
||||
than us and has more experience in writing manual pages, any patches
|
||||
would be greatly appreciated.
|
||||
|
||||
.SH SEE ALSO
|
||||
.BR exim (8),
|
||||
.BR perlre (1)
|
||||
|
||||
|
||||
.SH AUTHOR
|
||||
This manual page was stitched together from spec.txt by
|
||||
Andreas Metzler <ametzler at downhill.at.eu.org>,
|
||||
for the Debian GNU/Linux system (but may be used by others).
|
|
@ -0,0 +1,79 @@
|
|||
.\" Hey, EMACS: -*- nroff -*-
|
||||
.\" First parameter, NAME, should be all caps
|
||||
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
|
||||
.\" other parameters are allowed: see man(7), man(1)
|
||||
.TH EXIM_CHECKACCESS 8 "March 26, 2003"
|
||||
.\" Please adjust this date whenever revising the manpage.
|
||||
.\"
|
||||
.\" Some roff macros, for reference:
|
||||
.\" .nh disable hyphenation
|
||||
.\" .hy enable hyphenation
|
||||
.\" .ad l left justify
|
||||
.\" .ad b justify to both left and right margins
|
||||
.\" .nf disable filling
|
||||
.\" .fi enable filling
|
||||
.\" .br insert line break
|
||||
.\" .sp <n> insert n+1 empty lines
|
||||
.\" for manpage-specific macros, see man(7)
|
||||
.\" \(oqthis text is enclosed in single quotes\(cq
|
||||
.\" \(lqthis text is enclosed in double quotes\(rq
|
||||
.SH NAME
|
||||
exim_checkaccess \- Check address acceptance from given IP
|
||||
.SH SYNOPSIS
|
||||
.B exim_checkaccess
|
||||
.I IP-address email@address [more Exim options]
|
||||
|
||||
.SH DESCRIPTION
|
||||
.B Exim's
|
||||
.I \-bh
|
||||
command line argument allows you to run a fake SMTP session with debugging
|
||||
output, in order to check what Exim is doing when it is applying policy
|
||||
controls to incoming SMTP mail.
|
||||
However, not everybody is sufficiently familiar with the SMTP protocol to
|
||||
be able to make full use of \-bh, and sometimes you just want to answer the
|
||||
question \(lqDoes this address have access?\(rq without bothering with any
|
||||
further details.
|
||||
|
||||
The
|
||||
.B exim_checkaccess
|
||||
utility is a \(oqpackaged\(cq version of
|
||||
.I \-bh.
|
||||
It takes two arguments, an IP address and an email address:
|
||||
|
||||
exim_checkaccess 10.9.8.7 A.User@a.domain.example
|
||||
|
||||
The utility runs a call to
|
||||
.B Exim
|
||||
with the \-bh option, to test whether the given email address would be
|
||||
accepted in a RCPT command in a TCP/IP connection from the host with the
|
||||
given IP address.
|
||||
The output of the utility is either the word \(oqaccepted\(cq, or the SMTP error
|
||||
response, for example:
|
||||
|
||||
Rejected:
|
||||
550 Relay not permitted
|
||||
|
||||
When running this test, the utility uses \(lq<>\(rq as the envelope sender
|
||||
address for the MAIL command, but you can change this by providing additional
|
||||
options. These are passed directly to the Exim command.
|
||||
For example, to specify that the test is to be run with the sender address
|
||||
\(lqhimself@there.example\(rq you can use:
|
||||
|
||||
exim_checkaccess 10.9.8.7 A.User@a.domain.example \\
|
||||
\-f himself@there.example
|
||||
|
||||
Note that these additional Exim command line items must be given after the
|
||||
two mandatory arguments.
|
||||
|
||||
.SH BUGS
|
||||
This manual page needs a major re-work. If somebody knows better groff
|
||||
than us and has more experience in writing manual pages, any patches
|
||||
would be greatly appreciated.
|
||||
|
||||
.SH SEE ALSO
|
||||
.BR exim (8)
|
||||
|
||||
.SH AUTHOR
|
||||
This manual page was stitched together from spec.txt by
|
||||
Andreas Metzler <ametzler at downhill.at.eu.org>,
|
||||
for the Debian GNU/Linux system (but may be used by others).
|
|
@ -0,0 +1,168 @@
|
|||
.\" Hey, EMACS: -*- nroff -*-
|
||||
.\" First parameter, NAME, should be all caps
|
||||
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
|
||||
.\" other parameters are allowed: see man(7), man(1)
|
||||
.TH EXIM_DB 8 "March 26, 2003"
|
||||
.\" Please adjust this date whenever revising the manpage.
|
||||
.\"
|
||||
.\" Some roff macros, for reference:
|
||||
.\" .nh disable hyphenation
|
||||
.\" .hy enable hyphenation
|
||||
.\" .ad l left justify
|
||||
.\" .ad b justify to both left and right margins
|
||||
.\" .nf disable filling
|
||||
.\" .fi enable filling
|
||||
.\" .br insert line break
|
||||
.\" .sp <n> insert n+1 empty lines
|
||||
.\" for manpage-specific macros, see man(7)
|
||||
.\" \(oqthis text is enclosed in single quotes\(cq
|
||||
.\" \(lqthis text is enclosed in double quotes\(rq
|
||||
.SH NAME
|
||||
exim_db \- Manage Exim's hint databases (exim_dumpdb, exim_fixdb, exim_tidydb)
|
||||
.SH SYNOPSIS
|
||||
.B exim_dumpdb
|
||||
.I spooldir database
|
||||
.br
|
||||
.B exim_fixdb
|
||||
.I spooldir database
|
||||
.br
|
||||
.B exim_tidydb
|
||||
.I [\-f] [\-t time] spooldir database
|
||||
|
||||
.SH DESCRIPTION
|
||||
Three utility programs are provided for maintaining the DBM files that
|
||||
Exim uses to contain its delivery hint information.
|
||||
Each program requires two arguments.
|
||||
The first specifies the name of Exim's spool directory, and the second is
|
||||
the name of the database it is to operate on.
|
||||
These are as follows:
|
||||
.TP
|
||||
.B retry
|
||||
the database of retry information
|
||||
.TP
|
||||
.B wait\-<transport name>
|
||||
databases of information about messages waiting for remote hosts
|
||||
.TP
|
||||
.B misc
|
||||
other hints data (for example, for serializing ETRN runs)
|
||||
.P
|
||||
The entire contents of a database are written to the standard output by the
|
||||
.B exim_dumpdb
|
||||
program, which has no options or arguments other than the spool
|
||||
and database names.
|
||||
For example, to dump the retry database:
|
||||
|
||||
.I exim_dumpdb /var/spool/exim retry
|
||||
|
||||
Two lines of output are produced for each entry:
|
||||
.nf
|
||||
T:mail.ref.example:192.168.242.242 146 77 Connection refused
|
||||
31-Oct-1995 12:00:12 02-Nov-1995 12:21:39 02-Nov-1995 20:21:39 *
|
||||
|
||||
.fi
|
||||
The first item on the first line is the key of the record.
|
||||
It starts with one of the letters R, or T, depending on whether it refers
|
||||
to a routing or transport retry.
|
||||
For a local delivery, the next part is the local address; for a remote
|
||||
delivery it is the name of the remote host, followed by its failing IP
|
||||
address (unless \(lqno_retry_include_ip_address\(rq is set on the smtp
|
||||
transport).
|
||||
Then there follows an error code, an additional error code, and a
|
||||
textual description of the error.
|
||||
|
||||
The three times on the second line are the time of first failure, the time of
|
||||
the last delivery attempt, and the computed time for the next attempt.
|
||||
The line ends with an asterisk if the cutoff time for the last retry rule
|
||||
has been exceeded.
|
||||
|
||||
Each output line from
|
||||
.B exim_dumpdb
|
||||
for the
|
||||
.I wait\-xxx
|
||||
databases consists of a host name followed by a list of ids for messages
|
||||
that are or were waiting to be delivered to that host.
|
||||
If there are a very large number for any one host, continuation records,
|
||||
with a sequence number added to the host name, may be seen.
|
||||
The data in these records is often out of date, because a message may be
|
||||
routed to several alternative hosts, and Exim makes no effort to keep
|
||||
cross-references.
|
||||
|
||||
The
|
||||
.B exim_tidydb
|
||||
utility program is used to tidy up the contents of the hints databases.
|
||||
If run with no options, it removes all records from a database that are
|
||||
more than 30 days old.
|
||||
The cutoff date can be altered by means of the \-t option, which must be
|
||||
followed by a time.
|
||||
For example, to remove all records older than a week from the retry
|
||||
database:
|
||||
|
||||
.I exim_tidydb \-t 7d /var/spool/exim retry
|
||||
|
||||
Both the
|
||||
.I wait\-xxx
|
||||
and
|
||||
.I retry
|
||||
databases contain items that involve message ids.
|
||||
In the former these appear as data in records keyed by host - they were
|
||||
messages that were waiting for that host - and in the latter they are the
|
||||
keys for retry information for messages that have suffered certain types
|
||||
of error.
|
||||
When \(lqexim_tidydb\(rq is run, a check is made to ensure that message ids in
|
||||
database records are those of messages that are still on the queue.
|
||||
Message ids for messages that no longer exist are removed from \(lqwait\-\(rqxxx
|
||||
records, and if this leaves any records empty, they are deleted.
|
||||
For the \(lqretry\(rq database, records whose keys are non-existent message
|
||||
ids are removed.
|
||||
The
|
||||
.B exim_tidydb
|
||||
utility outputs comments on the standard output whenever it removes
|
||||
information from the database.
|
||||
|
||||
Removing records from a DBM file does not normally make the file smaller, but
|
||||
all the common DBM libraries are able to re-use the space that is released.
|
||||
It is therefore suggested that
|
||||
.B exim_tidydb
|
||||
be run periodically on all the hints databases, but at a quiet time of day,
|
||||
because it requires a database to be locked (and therefore inaccessible to
|
||||
Exim) while it does its work.
|
||||
|
||||
The
|
||||
.B exim_fixdb
|
||||
program is a utility for interactively modifying databases.
|
||||
Its main use is for testing Exim, but it might also be occasionally useful
|
||||
for getting round problems in a live system.
|
||||
It has no options, and its interface is somewhat crude.
|
||||
On entry, it prompts for input with a right angle-bracket.
|
||||
A key of a database record can then be entered, and the data for that
|
||||
record is displayed.
|
||||
|
||||
If \(oqd\(cq is typed at the next prompt, the entire record is deleted.
|
||||
For all except the
|
||||
.I retry
|
||||
database, that is the only operation that can be carried out.
|
||||
For the
|
||||
.I retry
|
||||
database, each field is output preceded by a number, and data for individual
|
||||
fields can be changed by typing the field number followed by new data, for
|
||||
example:
|
||||
|
||||
> 4 951102:1000
|
||||
|
||||
resets the time of the next delivery attempt.
|
||||
Time values are given as a sequence of digit pairs for year, month, day,
|
||||
hour, and minute.
|
||||
Colons can be used as optional separators.
|
||||
|
||||
.SH BUGS
|
||||
This manual page needs a major re-work. If somebody knows better groff
|
||||
than us and has more experience in writing manual pages, any patches
|
||||
would be greatly appreciated.
|
||||
|
||||
.SH SEE ALSO
|
||||
.BR exim (8)
|
||||
|
||||
.SH AUTHOR
|
||||
This manual page was stitched together from spec.txt by
|
||||
Andreas Metzler <ametzler at downhill.at.eu.org>,
|
||||
for the Debian GNU/Linux system (but may be used by others).
|
|
@ -0,0 +1,104 @@
|
|||
.\" Hey, EMACS: -*- nroff -*-
|
||||
.\" First parameter, NAME, should be all caps
|
||||
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
|
||||
.\" other parameters are allowed: see man(7), man(1)
|
||||
.TH EXIM_DBMBUILD 8 "March 26, 2003"
|
||||
.\" Please adjust this date whenever revising the manpage.
|
||||
.\"
|
||||
.\" Some roff macros, for reference:
|
||||
.\" .nh disable hyphenation
|
||||
.\" .hy enable hyphenation
|
||||
.\" .ad l left justify
|
||||
.\" .ad b justify to both left and right margins
|
||||
.\" .nf disable filling
|
||||
.\" .fi enable filling
|
||||
.\" .br insert line break
|
||||
.\" .sp <n> insert n+1 empty lines
|
||||
.\" for manpage-specific macros, see man(7)
|
||||
.\" \(oqthis text is enclosed in single quotes\(cq
|
||||
.\" \(lqthis text is enclosed in double quotes\(rq
|
||||
.SH NAME
|
||||
exim_dbmbuild \- Build a DBM file.
|
||||
.SH SYNOPSIS
|
||||
.B exim_dbmbuild
|
||||
.I [\-nolc] [\-nozero] [\-noduperr] [\-nowarn] inputfile|\- outputfile
|
||||
|
||||
.SH DESCRIPTION
|
||||
The
|
||||
.B exim_dbmbuild
|
||||
program reads an input file containing keys and data in
|
||||
the format used by the
|
||||
.I lsearch
|
||||
lookup (see section 9.1).
|
||||
It writes a DBM file using the lower-cased alias names as keys and the
|
||||
remainder of the information as data.
|
||||
The lower-casing can be prevented by calling the program with the
|
||||
.I \-nolc
|
||||
option.
|
||||
|
||||
A terminating zero is included as part of the key string.
|
||||
This is expected by the dbm lookup type.
|
||||
However, if the option
|
||||
.I \-nozero
|
||||
is given,
|
||||
.B exim_dbmbuild
|
||||
creates files without terminating zeroes in either the key strings or the
|
||||
data strings.
|
||||
The
|
||||
.I dbmnz
|
||||
lookup type can be used with such files.
|
||||
|
||||
The program requires two arguments: the name of the input file (which can
|
||||
be a single hyphen to indicate the standard input), and the name of the
|
||||
output file.
|
||||
It creates the output under a temporary name, and then renames it if all
|
||||
went well.
|
||||
If the native DB interface is in use (USE_DB is set in a compile-time
|
||||
configuration file - this is common in free versions of Unix) the two file
|
||||
names must be different, because in this mode the Berkeley DB functions
|
||||
create a single output file using exactly the name given.
|
||||
For example,
|
||||
|
||||
exim_dbmbuild /etc/aliases /etc/aliases.db
|
||||
|
||||
reads the system alias file and creates a DBM version of it in
|
||||
/etc/aliases.db.
|
||||
|
||||
In systems that use the
|
||||
.I ndbm
|
||||
routines (mostly proprietary versions of Unix), two files are used, with the
|
||||
suffixes .dir and .pag.
|
||||
In this environment, the suffixes are added to the second argument of
|
||||
.B exim_dbmbuild,
|
||||
so it can be the same as the first.
|
||||
This is also the case when the Berkeley functions are used in
|
||||
compatibility mode (though this is not recommended), because in that case
|
||||
it adds a .db suffix to the file name.
|
||||
|
||||
If a duplicate key is encountered, the program outputs a warning, and when
|
||||
it finishes, its return code is 1 rather than zero, unless the
|
||||
.I \-noduperr
|
||||
option is used.
|
||||
By default, only the first of a set of duplicates is used - this makes it
|
||||
compatible with lsearch lookups.
|
||||
There is an option
|
||||
.I \-lastdup
|
||||
which causes it to use the data for the last duplicate instead.
|
||||
There is also an option
|
||||
.I \-nowarn,
|
||||
which stops it listing duplicate keys to \(lqstderr\(rq.
|
||||
For other errors, where it doesn't actually make a new file, the return
|
||||
code is 2.
|
||||
|
||||
.SH BUGS
|
||||
This manual page needs a major re-work. If somebody knows better groff
|
||||
than us and has more experience in writing manual pages, any patches
|
||||
would be greatly appreciated.
|
||||
|
||||
.SH SEE ALSO
|
||||
.BR exim (8)
|
||||
|
||||
.SH AUTHOR
|
||||
This manual page was stitched together from spec.txt by
|
||||
Andreas Metzler <ametzler at downhill.at.eu.org>,
|
||||
for the Debian GNU/Linux system (but may be used by others).
|
|
@ -0,0 +1,136 @@
|
|||
.\" Hey, EMACS: -*- nroff -*-
|
||||
.\" First parameter, NAME, should be all caps
|
||||
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
|
||||
.\" other parameters are allowed: see man(7), man(1)
|
||||
.TH EXIM_LOCK 8 "March 26, 2003"
|
||||
.\" Please adjust this date whenever revising the manpage.
|
||||
.\"
|
||||
.\" Some roff macros, for reference:
|
||||
.\" .nh disable hyphenation
|
||||
.\" .hy enable hyphenation
|
||||
.\" .ad l left justify
|
||||
.\" .ad b justify to both left and right margins
|
||||
.\" .nf disable filling
|
||||
.\" .fi enable filling
|
||||
.\" .br insert line break
|
||||
.\" .sp <n> insert n+1 empty lines
|
||||
.\" for manpage-specific macros, see man(7)
|
||||
.\" \(oqthis text is enclosed in single quotes\(cq
|
||||
.\" \(lqthis text is enclosed in double quotes\(rq
|
||||
.SH NAME
|
||||
exim_lock \- Mailbox maintenance
|
||||
.SH SYNOPSIS
|
||||
.B exim_lock
|
||||
.RI [ options ] mailbox-file
|
||||
|
||||
.SH DESCRIPTION
|
||||
The
|
||||
.B exim_lock
|
||||
utility locks a mailbox file using the same algorithm as Exim.
|
||||
For a discussion of locking issues, see section 25.2.
|
||||
.B exim_lock
|
||||
can be used to prevent any modification of a mailbox by Exim or a user
|
||||
agent while investigating a problem.
|
||||
The utility requires the name of the file as its first argument.
|
||||
If the locking is successful, the second argument is run as a command
|
||||
(using C's \(lqsystem()\(rq function); if there is no second argument, the value
|
||||
of the SHELL environment variable is used; if this is unset or empty,
|
||||
/bin/sh is run.
|
||||
When the command finishes, the mailbox is unlocked and the utility ends.
|
||||
The following options are available:
|
||||
.TP
|
||||
.I \-fcntl
|
||||
Use \(lqfcntl()\(rq locking on the open mailbox.
|
||||
.TP
|
||||
.I \-interval
|
||||
This must be followed by a number, which is a number of seconds; it
|
||||
sets the interval to sleep between retries (default 3).
|
||||
.TP
|
||||
.I \-lockfile
|
||||
Create a lock file before opening the mailbox.
|
||||
.TP
|
||||
.I \-mbx
|
||||
Lock the mailbox using MBX rules.
|
||||
.TP
|
||||
.I \-q
|
||||
Suppress verification output.
|
||||
.TP
|
||||
.I \-retries
|
||||
This must be followed by a number; it sets the number of times to try
|
||||
to get the lock (default 10).
|
||||
.TP
|
||||
.I \-timeout
|
||||
This must be followed by a number, which is a number of seconds; it
|
||||
sets a timeout to be used with a blocking \(lqfcntl()\(rq lock.
|
||||
If it is not set (the default), a non-blocking call is used.
|
||||
.TP
|
||||
.I \-v
|
||||
Generate verbose output.
|
||||
|
||||
If none of
|
||||
.I \-fcntl, \-lockfile
|
||||
or
|
||||
.I \-mbx
|
||||
are given, the default is to create a lock file and also use \(lqfcntl()\(rq locking
|
||||
on the mailbox, which is the same as
|
||||
.B Exim's
|
||||
default.
|
||||
The use of
|
||||
.I \-fcntl
|
||||
requires that the file be writable; the use
|
||||
of
|
||||
.I \-lockfile
|
||||
requires that the directory containing the file be writable.
|
||||
Locking by lock file does not last for ever; Exim assumes that a lock file
|
||||
is expired if it is more than 30 minutes old.
|
||||
|
||||
The
|
||||
.I \-mbx
|
||||
option is mutually exclusive with
|
||||
.I \-fcntl.
|
||||
It causes a shared lock to be taken out on the open mailbox, and an
|
||||
exclusive lock on the file /tmp/.n.m where n and m are the device number
|
||||
and inode number of the mailbox file.
|
||||
When the locking is released, if an exclusive lock can be obtained for the
|
||||
mailbox, the file in /tmp is deleted.
|
||||
|
||||
The default output contains verification of the locking that takes place.
|
||||
The
|
||||
.I \-v
|
||||
option causes some additional information to be given.
|
||||
The
|
||||
.I \-q
|
||||
option suppresses all output except error messages.
|
||||
.PP
|
||||
A command such as
|
||||
|
||||
exim_lock /var/spool/mail/spqr
|
||||
|
||||
runs an interactive shell while the file is locked, whereas
|
||||
|
||||
exim_lock \-q /var/spool/mail/spqr <<End
|
||||
<some commands>
|
||||
End
|
||||
|
||||
runs a specific non-interactive sequence of commands while the file is
|
||||
locked, suppressing all verification output.
|
||||
A single command can be run by a command such as
|
||||
|
||||
exim_lock \-q /var/spool/mail/spqr \
|
||||
"cp /var/spool/mail/spqr /some/where"
|
||||
|
||||
Note that if a command is supplied, it must be entirely contained within
|
||||
the second argument - hence the quotes.
|
||||
|
||||
.SH BUGS
|
||||
This manual page needs a major re-work. If somebody knows better groff
|
||||
than us and has more experience in writing manual pages, any patches
|
||||
would be greatly appreciated.
|
||||
|
||||
.SH SEE ALSO
|
||||
.BR exim (8)
|
||||
|
||||
.SH AUTHOR
|
||||
This manual page was stitched together from spec.txt by
|
||||
Andreas Metzler <ametzler at downhill.at.eu.org>,
|
||||
for the Debian GNU/Linux system (but may be used by others).
|
|
@ -0,0 +1,49 @@
|
|||
.\" Hey, EMACS: -*- nroff -*-
|
||||
.\" First parameter, NAME, should be all caps
|
||||
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
|
||||
.\" other parameters are allowed: see man(7), man(1)
|
||||
.TH EXIMON 8 "March 26, 2003"
|
||||
.\" Please adjust this date whenever revising the manpage.
|
||||
.\"
|
||||
.\" Some roff macros, for reference:
|
||||
.\" .nh disable hyphenation
|
||||
.\" .hy enable hyphenation
|
||||
.\" .ad l left justify
|
||||
.\" .ad b justify to both left and right margins
|
||||
.\" .nf disable filling
|
||||
.\" .fi enable filling
|
||||
.\" .br insert line break
|
||||
.\" .sp <n> insert n+1 empty lines
|
||||
.\" for manpage-specific macros, see man(7)
|
||||
.\" \(oqthis text is enclosed in single quotes\(cq
|
||||
.\" \(lqthis text is enclosed in double quotes\(rq
|
||||
.SH NAME
|
||||
eximon \- Monitor Exim
|
||||
.SH SYNOPSIS
|
||||
.B eximon
|
||||
|
||||
.SH DESCRIPTION
|
||||
The Exim monitor is an application which displays in an X window information
|
||||
about the state of
|
||||
.B Exim's
|
||||
queue and what
|
||||
.B Exim is doing.
|
||||
An admin user can perform certain operations on messages from this GUI
|
||||
interface; however all such facilities are also available from the command
|
||||
line, and indeed, the monitor itself makes use of the command line to
|
||||
perform any actions requested.
|
||||
|
||||
.SH BUGS
|
||||
This manual page needs a major re-work. If somebody knows better groff
|
||||
than us and has more experience in writing manual pages, any patches
|
||||
would be greatly appreciated.
|
||||
|
||||
.SH SEE ALSO
|
||||
.BR exim (8).
|
||||
Eximon is documented extensivly in the
|
||||
.B specification of the exim mail transfer agent.
|
||||
|
||||
.SH AUTHOR
|
||||
This manual page was stitched together from spec.txt by
|
||||
Andreas Metzler <ametzler at downhill.at.eu.org>,
|
||||
for the Debian GNU/Linux system (but may be used by others).
|
|
@ -0,0 +1,72 @@
|
|||
.\" Hey, EMACS: -*- nroff -*-
|
||||
.\" First parameter, NAME, should be all caps
|
||||
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
|
||||
.\" other parameters are allowed: see man(7), man(1)
|
||||
.TH EXINEXT 8 "March 26, 2003"
|
||||
.\" Please adjust this date whenever revising the manpage.
|
||||
.\"
|
||||
.\" Some roff macros, for reference:
|
||||
.\" .nh disable hyphenation
|
||||
.\" .hy enable hyphenation
|
||||
.\" .ad l left justify
|
||||
.\" .ad b justify to both left and right margins
|
||||
.\" .nf disable filling
|
||||
.\" .fi enable filling
|
||||
.\" .br insert line break
|
||||
.\" .sp <n> insert n+1 empty lines
|
||||
.\" for manpage-specific macros, see man(7)
|
||||
.\" \(oqthis text is enclosed in single quotes\(cq
|
||||
.\" \(lqthis text is enclosed in double quotes\(rq
|
||||
.SH NAME
|
||||
exinext \- Finding individual retry times
|
||||
.SH SYNOPSIS
|
||||
.B exinext
|
||||
.I address|message-id
|
||||
|
||||
.SH DESCRIPTION
|
||||
A utility called
|
||||
.B exinext
|
||||
(mostly a Perl script) provides the ability to fish specific information
|
||||
out of the retry database.
|
||||
Given a mail domain (or a complete address), it looks up the hosts for
|
||||
that domain, and outputs any retry information for the hosts or for the
|
||||
domain.
|
||||
At present, the retry information is obtained by running
|
||||
.B exim_dumpdb
|
||||
(see below) and processing the output.
|
||||
For example:
|
||||
|
||||
exinext piglet@milne.fict.example
|
||||
kanga.milne.fict.example:192.168.8.1 error 146: Connection refused
|
||||
first failed: 21-Feb-1996 14:57:34
|
||||
last tried: 21-Feb-1996 14:57:34
|
||||
next try at: 21-Feb-1996 15:02:34
|
||||
roo.milne.fict.example:192.168.8.3 error 146: Connection refused
|
||||
first failed: 20-Jan-1996 13:12:08
|
||||
last tried: 21-Feb-1996 11:42:03
|
||||
next try at: 21-Feb-1996 19:42:03
|
||||
past final cutoff time
|
||||
|
||||
You can also give
|
||||
.B exinext
|
||||
a local part, without a domain, and it will give any retry information for
|
||||
that local part in your default domain.
|
||||
A message id can be used to obtain retry information pertaining to a
|
||||
specific message.
|
||||
This exists only when an attempt to deliver a message to a remote host
|
||||
suffers a message-specific error (see section 42.2).
|
||||
.B exinext
|
||||
is not particularly efficient, but then it isn't expected to be run very often.
|
||||
|
||||
.SH BUGS
|
||||
This manual page needs a major re-work. If somebody knows better groff
|
||||
than us and has more experience in writing manual pages, any patches
|
||||
would be greatly appreciated.
|
||||
|
||||
.SH SEE ALSO
|
||||
.BR exim (8)
|
||||
|
||||
.SH AUTHOR
|
||||
This manual page was stitched together from spec.txt by
|
||||
Andreas Metzler <ametzler at downhill.at.eu.org>,
|
||||
for the Debian GNU/Linux system (but may be used by others).
|
|
@ -0,0 +1,86 @@
|
|||
.\" Hey, EMACS: -*- nroff -*-
|
||||
.\" First parameter, NAME, should be all caps
|
||||
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
|
||||
.\" other parameters are allowed: see man(7), man(1)
|
||||
.TH EXIQGREP 8 "March 26, 2003"
|
||||
.\" Please adjust this date whenever revising the manpage.
|
||||
.\"
|
||||
.\" Some roff macros, for reference:
|
||||
.\" .nh disable hyphenation
|
||||
.\" .hy enable hyphenation
|
||||
.\" .ad l left justify
|
||||
.\" .ad b justify to both left and right margins
|
||||
.\" .nf disable filling
|
||||
.\" .fi enable filling
|
||||
.\" .br insert line break
|
||||
.\" .sp <n> insert n+1 empty lines
|
||||
.\" for manpage-specific macros, see man(7)
|
||||
.\" \(oqthis text is enclosed in single quotes\(cq
|
||||
.\" \(lqthis text is enclosed in double quotes\(rq
|
||||
.SH NAME
|
||||
exiqgrep \- Search in the exim queue
|
||||
.SH SYNOPSIS
|
||||
.B exiqgrep
|
||||
.I [\-a] [\-c]
|
||||
|
||||
.SH DESCRIPTION
|
||||
The
|
||||
.B exiqgrep
|
||||
utility is a Perl script which offers possibilities to grep in the
|
||||
exim queue output. Unlike exiqsumm, it invokes exim \-bpu itself and
|
||||
does not need to be invoked in a pipe.
|
||||
|
||||
.SH OPTIONS
|
||||
.TP 10
|
||||
\fB\-h\fR
|
||||
Print help
|
||||
.TP
|
||||
\fB\-f <regexp>\fR
|
||||
Match sender address (field is \(lq< >\(rq wrapped)
|
||||
.TP
|
||||
\fB\-r <regexp>\fR
|
||||
Match recipient address
|
||||
.TP
|
||||
\fB\-s <regexp>\fR
|
||||
Match against the site field from long output
|
||||
.TP
|
||||
\fB\-y <seconds>\fR
|
||||
Message younger than
|
||||
.TP
|
||||
\fB\-o <seconds>\fR
|
||||
Message older than
|
||||
.TP
|
||||
\fB\-z\fR
|
||||
Frozen messages only (exclude non-frozen)
|
||||
.TP
|
||||
\fB\-x\fR
|
||||
Non-frozen messages only (exclude frozen)
|
||||
.TP
|
||||
\fB\-c\fR
|
||||
Display match count
|
||||
.TP
|
||||
\fB\-l\fR
|
||||
Long Format [Default]
|
||||
.TP
|
||||
\fB\-i\fR
|
||||
Message IDs only
|
||||
.TP
|
||||
\fB\-b\fR
|
||||
Brief Format
|
||||
.TP
|
||||
\fB\-R\fR
|
||||
Reverse order
|
||||
|
||||
.SH BUGS
|
||||
This manual page needs a major re-work. If somebody knows better groff
|
||||
than us and has more experience in writing manual pages, any patches
|
||||
would be greatly appreciated.
|
||||
|
||||
.SH SEE ALSO
|
||||
.BR exim (8)
|
||||
|
||||
.SH AUTHOR
|
||||
This manual page was stitched together from the source code by Marc
|
||||
Haber <mh+debian\-packages@zugschlus.de>, using the exiqsumm man page by
|
||||
Andreas Metzler <ametzler at downhill.at.eu.org>,
|
||||
for the Debian GNU/Linux system (but may be used by others).
|
|
@ -0,0 +1,73 @@
|
|||
.\" Hey, EMACS: -*- nroff -*-
|
||||
.\" First parameter, NAME, should be all caps
|
||||
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
|
||||
.\" other parameters are allowed: see man(7), man(1)
|
||||
.TH EXIQSUMM 8 "March 26, 2003"
|
||||
.\" Please adjust this date whenever revising the manpage.
|
||||
.\"
|
||||
.\" Some roff macros, for reference:
|
||||
.\" .nh disable hyphenation
|
||||
.\" .hy enable hyphenation
|
||||
.\" .ad l left justify
|
||||
.\" .ad b justify to both left and right margins
|
||||
.\" .nf disable filling
|
||||
.\" .fi enable filling
|
||||
.\" .br insert line break
|
||||
.\" .sp <n> insert n+1 empty lines
|
||||
.\" for manpage-specific macros, see man(7)
|
||||
.\" \(oqthis text is enclosed in single quotes\(cq
|
||||
.\" \(lqthis text is enclosed in double quotes\(rq
|
||||
.SH NAME
|
||||
exiqsumm \- Summarising the queue
|
||||
.SH SYNOPSIS
|
||||
.B exiqsumm
|
||||
.I [\-a] [\-c]
|
||||
|
||||
.SH DESCRIPTION
|
||||
The
|
||||
.B exiqsumm
|
||||
utility is a Perl script which reads the output of
|
||||
.I exim \-bp
|
||||
and produces a summary of the messages on the queue.
|
||||
Thus, you use it by running a command such as
|
||||
|
||||
exim \-bp | exiqsumm
|
||||
|
||||
The output consists of one line for each domain that has messages waiting
|
||||
for it, as in the following example:
|
||||
|
||||
3 2322 74m 66m msn.com.example
|
||||
|
||||
This lists the number of messages for the domain, their total volume, and
|
||||
the length of time that the oldest and the newest messages have been
|
||||
waiting.
|
||||
By default the output is sorted on the domain name, but
|
||||
.B exiqsumm
|
||||
has the options
|
||||
.I \-a
|
||||
and
|
||||
.I \-c,
|
||||
which cause the output to be sorted by oldest message and by count of
|
||||
messages, respectively.
|
||||
|
||||
The output of
|
||||
.I exim \-bp
|
||||
contains the original addresses in the message, so this also applies to
|
||||
the output from
|
||||
.B exiqsumm.
|
||||
No domains from addresses generated by aliasing or forwarding are included
|
||||
(unless the \(lqone_time\(rq option of the redirect router has been used to
|
||||
convert them into \(oqtop level\(cq addresses).
|
||||
|
||||
.SH BUGS
|
||||
This manual page needs a major re-work. If somebody knows better groff
|
||||
than us and has more experience in writing manual pages, any patches
|
||||
would be greatly appreciated.
|
||||
|
||||
.SH SEE ALSO
|
||||
.BR exim (8)
|
||||
|
||||
.SH AUTHOR
|
||||
This manual page was stitched together from spec.txt by
|
||||
Andreas Metzler <ametzler at downhill.at.eu.org>,
|
||||
for the Debian GNU/Linux system (but may be used by others).
|
|
@ -0,0 +1,101 @@
|
|||
.\" Hey, EMACS: -*- nroff -*-
|
||||
.\" First parameter, NAME, should be all caps
|
||||
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
|
||||
.\" other parameters are allowed: see man(7), man(1)
|
||||
.TH EXIWHAT 8 "March 26, 2003"
|
||||
.\" Please adjust this date whenever revising the manpage.
|
||||
.\"
|
||||
.\" Some roff macros, for reference:
|
||||
.\" .nh disable hyphenation
|
||||
.\" .hy enable hyphenation
|
||||
.\" .ad l left justify
|
||||
.\" .ad b justify to both left and right margins
|
||||
.\" .nf disable filling
|
||||
.\" .fi enable filling
|
||||
.\" .br insert line break
|
||||
.\" .sp <n> insert n+1 empty lines
|
||||
.\" for manpage-specific macros, see man(7)
|
||||
.\" \(oqthis text is enclosed in single quotes\(cq
|
||||
.\" \(lqthis text is enclosed in double quotes\(rq
|
||||
.SH NAME
|
||||
exiwhat \- Finding out what Exim processes are doing
|
||||
.SH SYNOPSIS
|
||||
.B exiwhat
|
||||
|
||||
.SH DESCRIPTION
|
||||
On operating systems that can restart a system call after receiving a
|
||||
signal (most modern OS), an
|
||||
.B Exim
|
||||
process responds to the SIGUSR1 signal by writing a line describing what
|
||||
it is doing to the file exim\-process.info in the Exim spool directory.
|
||||
The
|
||||
.B exiwhat
|
||||
script sends the signal to all
|
||||
.B Exim
|
||||
processes it can find, having first emptied the file.
|
||||
It then waits for one second to allow the
|
||||
.B Exim
|
||||
processes to react before displaying the results.
|
||||
In order to run
|
||||
.B exiwhat
|
||||
successfully you have to have sufficient privilege to send the signal to
|
||||
the
|
||||
.B Exim
|
||||
processes, so it is normally run as root.
|
||||
|
||||
Unfortunately, the
|
||||
.B ps
|
||||
command which
|
||||
.B exiwhat
|
||||
uses to find
|
||||
.B Exim
|
||||
processes varies in different operating systems.
|
||||
Not only are different options used, but the format of the output is
|
||||
different.
|
||||
For this reason, there are some system configuration options that configure
|
||||
exactly how
|
||||
.B exiwhat
|
||||
works.
|
||||
If it doesn't seem to be working for you, check the following compile-time
|
||||
options:
|
||||
.TP
|
||||
.I EXIWHAT_PS_CMD
|
||||
the command for running \(lqps\(rq
|
||||
.TP
|
||||
.I EXIWHAT_PS_ARG
|
||||
the argument for \(lqps\(rq
|
||||
.TP
|
||||
.I EXIWHAT_EGREP_ARG
|
||||
the argument for \(lqegrep\(rq to select from \(lqps\(rq output
|
||||
.TP
|
||||
.I EXIWHAT_KILL_ARG
|
||||
the argument for the \(lqkill\(rq command
|
||||
.PP
|
||||
An example of typical output from
|
||||
.B exiwhat
|
||||
is
|
||||
|
||||
.nf
|
||||
164 daemon: -q1h, listening on port 25
|
||||
10483 running queue: waiting for 0tAycK-0002ij-00 (10492)
|
||||
10492 delivering 0tAycK-0002ij-00 to mail.ref.example [10.19.42.42]
|
||||
(editor@ref.example)
|
||||
10592 handling incoming call from [192.168.243.242]
|
||||
10628 accepting a local non-SMTP message
|
||||
.fi
|
||||
|
||||
The first number in the output line is the process number.
|
||||
The third line has been split here, in order to fit it on the page.
|
||||
|
||||
.SH BUGS
|
||||
This manual page needs a major re-work. If somebody knows better groff
|
||||
than us and has more experience in writing manual pages, any patches
|
||||
would be greatly appreciated.
|
||||
|
||||
.SH SEE ALSO
|
||||
.BR exim (8)
|
||||
|
||||
.SH AUTHOR
|
||||
This manual page was stitched together from spec.txt by
|
||||
Andreas Metzler <ametzler at downhill.at.eu.org>,
|
||||
for the Debian GNU/Linux system (but may be used by others).
|
|
@ -0,0 +1,19 @@
|
|||
# HOW TO EDIT THIS FILE:
|
||||
# The "handy ruler" below makes it easier to edit a package description. Line
|
||||
# up the first '|' above the ':' following the base package name, and the '|'
|
||||
# on the right side marks the last column you can put a character in. You must
|
||||
# make exactly 11 lines for the formatting to be correct. It's also
|
||||
# customary to leave one space after the ':'.
|
||||
|
||||
|-----handy-ruler------------------------------------------------------|
|
||||
exim: Exim (the Exim mail transfer agent)
|
||||
exim:
|
||||
exim: Exim is a mail transfer agent (MTA) used on Unix-like operating
|
||||
exim: systems. It is freely available under the GNU GPL and it aims to be a
|
||||
exim: general and flexible mailer with extensive facilities for checking
|
||||
exim: incoming e-mail. Exim was written by Philip Hazel for use in the
|
||||
exim: University of Cambridge Computing Service's e-mail systems.
|
||||
exim:
|
||||
exim: Homepage: http://www.exim.org/
|
||||
exim:
|
||||
exim:
|
Loading…
Reference in New Issue