Dovecot

From CBLFS
Revision as of 08:29, 5 April 2009 by Jciccone (talk | contribs) (Configuring)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search
Download Source: http://dovecot.org/releases/1.1/dovecot-1.1.13.tar.gz

Introduction to Dovecot

Dovecot is an open source IMAP and POP3 server for Linux/UNIX-like systems, written with security primarily in mind. Dovecot is an excellent choice for both small and large installations. It's fast, simple to set up, requires no special administration and it uses very little memory.

Project Homepage: http://www.dovecot.org/

Dependencies

Optional

Creating the Dovecot User & Group

groupadd -g 37 dovecot &&
useradd -c "Dovecot User" -d /dev/null \
       -u 37 -g dovecot -s /bin/false dovecot

Configuration Information

To compile OpenLDAP support pass the following to configure:

--with-ldap

To compile PostgreSQL support pass the following to configure:

--with-pgsql

To compile MySQL support pass the following to configure:

--with-mysql

To compile SQLite3 support pass the following to configure:

--with-sqlite

Non-Multilib

Compile the package:

./configure --prefix=/usr --sysconfdir=/etc \
    --localstatedir=/var \
    --libexecdir=/usr/lib/dovecot/exec &&
make

Install the package:

make install

Multilib

64Bit

Compile the package:

CC="gcc ${BUILD64}" USE_ARCH=64 \
PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
./configure --prefix=/usr --sysconfdir=/etc \
    --libdir=/usr/lib64 --localstatedir=/var \
    --libexecdir=/usr/lib64/dovecot/exec &&
make

Install the package:

make install

Configuring

Create the init script

cat > /etc/rc.d/init.d/dovecot << "EOF"
#!/bin/bash
# Begin $rc_base/init.d/dovecot

# Based on sysklogd script from LFS-3.1 and earlier.
# Rewritten by Gerard Beekmans  - gerard@linuxfromscratch.org

#$LastChangedBy: bdubbs $
#$Date: 2006-04-15 17:34:16 -0500 (Sat, 15 Apr 2006) $

. /etc/sysconfig/rc
. $rc_functions

pidfile=/var/run/dovecot.pid

case "$1" in
    start)
        boot_mesg "Starting Dovecot Server..."
        loadproc -p $pidfile /usr/sbin/dovecot
        ;;

    stop)
        boot_mesg "Stopping Dovecot Server..."
        killproc -p $pidfile /usr/sbin/dovecot
        ;;

    reload)
        boot_mesg "Reloading Dovecot Server..."
        reloadproc -p $pidfile /usr/sbin/dovecot
        ;;

    restart)
        $0 stop
        sleep 1
        $0 start
        ;;

    status)
        statusproc -p $pidfile /usr/sbin/dovecot
        ;;

    *)
        echo "Usage: $0 {start|stop|reload|restart|status}"
        exit 1
        ;;
esac

# End $rc_base/init.d/dovecot
EOF
chmod 754 /etc/rc.d/init.d/dovecot

Create the runlevel links

ln -sf  ../init.d/dovecot /etc/rc.d/rc0.d/K83dovecot
ln -sf  ../init.d/dovecot /etc/rc.d/rc1.d/K83dovecot
ln -sf  ../init.d/dovecot /etc/rc.d/rc2.d/K83dovecot
ln -sf  ../init.d/dovecot /etc/rc.d/rc3.d/S83dovecot
ln -sf  ../init.d/dovecot /etc/rc.d/rc4.d/S83dovecot
ln -sf  ../init.d/dovecot /etc/rc.d/rc5.d/S83dovecot
ln -sf  ../init.d/dovecot /etc/rc.d/rc6.d/K83dovecot