Saslauthd troubleshooting

From Finninday
Revision as of 17:33, 27 April 2006 by Rday (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

I recently upgraded packages related to sasl. According to the contents of /var/cache/apt/archives, these are the new packages:

-rw-r--r--  1 root root  120368 2006-04-24 05:08 sasl2-bin_2.1.19-1.5ubuntu4.2_amd64.deb
-rw-r--r--  1 root root  265392 2006-04-24 05:08 libsasl2_2.1.19-1.5ubuntu4.2_amd64.deb
-rw-r--r--  1 root root  170336 2006-04-24 05:08 libsasl2-modules_2.1.19-1.5ubuntu4.2_amd64.deb

Sometime after that, I noticed that I could no longer send mail. Soon after that, I noticed that saslauthd is not running and won't restart.

I found that /etc/init.d/saslauthd thinks that it is succeeding, but fails because $PWDIR doesn't have a match in the dpkg-statoverride list:

case "${1}" in
  start)
        echo -n "Starting ${DESC}: "
    dir=`dpkg-statoverride --list $PWDIR`
    test -z "$dir" || createdir $dir
    if start-stop-daemon ${START} >/dev/null 2>&1 ; then
        echo "${NAME}."
    else
        if start-stop-daemon --test ${START} >/dev/null 2>&1; then
            echo "(failed)."
            exit 1
        else
            echo "${DAEMON} already running."
            exit 0
        fi
    fi
        ;;

$PWDIR is set to /var/spool/postfix/var/run/saslauthd

The output of dpkg-statoverride --list is:

root sasl 660 /etc/sasldb2
postfix postdrop 02710 /var/spool/postfix/public
amavis amavis 755 /var/lib/amavis
root postdrop 02555 /usr/sbin/postdrop
amavis amavis 755 /var/lib/amavis/virusmails
amavis amavis 755 /var/run/amavis
root postdrop 02555 /usr/sbin/postqueue
hplip root 755 /var/run/hplip
root sasl 710 /var/run/saslauthd

The output of dpkg-statoverride --list /var/spool/postfix/var/run/saslauthd is nothing.

So dpkg-statoverride doesn't know that saslauthd is running inside the chroot jail of postfix. Do I want to pull saslauthd out of the chroot jail? That would allow other processes to use saslauthd and would probably make future upgrades to sasl less painful. I believe I tried that and found that the effort to circumvent the chroot jail of postfix was too much and too messy. And I don't really want saslauthd for anything but postfix.

So I need to figure out what dpkg-statoverride is and tell it where saslauthd is running.