Package: postfix
Version: 2.8.3-1
Severity: important

I've not changed the configuration of postfix for several years, and it's been
running quite happily all that time. I've suddenly started getting the
following errors:
> Jun 25 21:35:52 mrlinux postfix/smtp[1408]: fatal: unknown service: smtp/tcp
> Jun 25 21:44:03 mrlinux postfix/smtp[1958]: fatal: unknown service: smtp/tcp
> Jun 25 21:44:03 mrlinux postfix/smtp[1959]: fatal: unknown service: smtp/tcp
> Jun 25 21:44:03 mrlinux postfix/smtp[1960]: fatal: unknown service: smtp/tcp

My smtp is set to run chrooted, and has done so, as I say, for several years.

The most common cause of this message is apparently a missing or unreadable
/etc/services file (aka the /var/spool/postfix/etc/service file). I have this
file, and it's permissions are 644, so should be readable.

FWIW, I guess the most notable difference from the norm is probably that I
have nss-ldap in use.

Any ideas?

-- System Information:
Debian Release: wheezy/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: i386 (i686)

Kernel: Linux 2.6.32-5-686 (SMP w/4 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages postfix depends on:
ii  adduser 3.113                            add and remove users and groups
ii  debconf 1.5.39                           Debian configuration management sy
ii  dpkg    1.16.0.3                         Debian package management system
ii  libc6   2.13-7                           Embedded GNU C Library: Shared lib
ii  libdb5. 5.1.25-10                        Berkeley v5.1 Database Libraries [
ii  libsasl 2.1.24~rc1.dfsg1+cvs2011-05-23-4 Cyrus SASL - authentication abstra
ii  libssl1 1.0.0d-2                         SSL shared libraries
ii  lsb-bas 3.2-27                           Linux Standard Base 3.2 init scrip
ii  netbase 4.45                             Basic TCP/IP networking system
ii  ssl-cer 1.0.28                           simple debconf wrapper for OpenSSL

Versions of packages postfix recommends:
ii  python                        2.6.6-14   interactive high-level object-orie

Versions of packages postfix suggests:
ii  bsd-mai 8.1.2-0.20100314cvs-1            simple mail user agent
pn  dovecot <none>                           (no description available)
ii  libsasl 2.1.24~rc1.dfsg1+cvs2011-05-23-4 Cyrus SASL - pluggable authenticat
pn  postfix <none>                           (no description available)
ii  postfix 2.8.3-1                          LDAP map support for Postfix
pn  postfix <none>                           (no description available)
pn  postfix <none>                           (no description available)
pn  postfix <none>                           (no description available)
pn  procmai <none>                           (no description available)
pn  resolvc <none>                           (no description available)
ii  sasl2-b 2.1.23.dfsg1-8                   Cyrus SASL - administration progra
pn  ufw     <none>                           (no description available)

-- Configuration Files:
/etc/init.d/postfix changed:
PATH=/bin:/usr/bin:/sbin:/usr/sbin
DAEMON=/usr/sbin/postfix
NAME=Postfix
TZ=
unset TZ
SYNC_CHROOT="y"
test -f /etc/default/postfix && . /etc/default/postfix
test -x $DAEMON && test -f /etc/postfix/main.cf || exit 0
. /lib/lsb/init-functions
running() {
    queue=$(postconf -h queue_directory 2>/dev/null || echo /var/spool/postfix)
    if [ -f ${queue}/pid/master.pid ]; then
        pid=$(sed 's/ //g' ${queue}/pid/master.pid)
        # what directory does the executable live in.  stupid prelink systems.
        dir=$(ls -l /proc/$pid/exe 2>/dev/null | sed 's/.* -> //; 
s/\/[^\/]*$//')
        if [ "X$dir" = "X/usr/lib/postfix" ]; then
            echo y
        fi
    fi
}
case "$1" in
    start)
        log_daemon_msg "Starting Postfix Mail Transport Agent" postfix
        RUNNING=$(running)
        if [ -n "$RUNNING" ]; then
            log_end_msg 0
        else
            # if you set myorigin to 'ubuntu.com' or 'debian.org', it's wrong, 
and annoys the admins of
            # those domains.  See also sender_canonical_maps.
            MYORIGIN=$(postconf -h myorigin | tr 'A-Z' 'a-z')
            if [ "X${MYORIGIN#/}" != "X${MYORIGIN}" ]; then
                MYORIGIN=$(tr 'A-Z' 'a-z' < $MYORIGIN)
            fi
            if [ "X$MYORIGIN" = Xubuntu.com ] || [ "X$MYORIGIN" = Xdebian.org 
]; then
                log_failure_msg "Invalid \$myorigin ($MYORIGIN), refusing to 
start"
                log_end_msg 1
                exit 1
            fi
            # see if anything is running chrooted.
            NEED_CHROOT=$(awk '/^[0-9a-z]/ && ($5 ~ "[-yY]") { print "y"; 
exit}' /etc/postfix/master.cf)
            if [ -n "$NEED_CHROOT" ] && [ -n "$SYNC_CHROOT" ]; then
                # Make sure that the chroot environment is set up correctly.
                oldumask=$(umask)
                umask 022
                cd $(postconf -h queue_directory)
                SOCKETS="var/run/saslauthd/mux var/run/cyrus/socket/notify 
var/run/cyrus/socket/lmtp"
                for file in $SOCKETS; do
                        [ -d ${file%/*} ] || mkdir -p ${file%/*}
                        if [ -e /${file} ]; then rm -f ${file} && ln /${file} 
${file}; fi
                        #if [ -e  ${file} ]; then chmod a+rX ${file}; fi
                done
                # if we're using tls, then we need to add 
etc/ssl/certs/ca-certificates.crt.
                if [ -f "/etc/ssl/certs/ca-certificates.crt" ]; then
                        smtp_use_tls=$(postconf -h smtp_use_tls)
                        smtp_enforce_tls=$(postconf -h smtp_enforce_tls)
                        smtpd_use_tls=$(postconf -h smtpd_use_tls)
                        smtpd_enforce_tls=$(postconf -h smtpd_use_tls)
                        case 
:$smtp_use_tls:$smtp_enforce_tls:$smtpd_use_tls:$smtpd_enforce_tls: in
                        *:yes:*)
                                mkdir -p etc/ssl/certs
                                cp /etc/ssl/certs/ca-certificates.crt 
etc/ssl/certs/
                        esac
                fi
                # if we're using unix:passwd.byname, then we need to add 
etc/passwd.
                local_maps=$(postconf -h local_recipient_maps)
                if [ "X$local_maps" != "X${local_maps#*unix:passwd.byname}" ]; 
then
                    if [ "X$local_maps" = 
"X${local_maps#*proxy:unix:passwd.byname}" ]; then
                        sed 's/^\([^:]*\):[^:]*/\1:x/' /etc/passwd > etc/passwd
                        chmod a+r etc/passwd
                    fi
                fi
                FILES="etc/localtime etc/services etc/resolv.conf etc/hosts \
                    etc/nsswitch.conf etc/nss_mdns.config"
                for file in $FILES; do 
                    [ -d ${file%/*} ] || mkdir -p ${file%/*}
                    if [ -f /${file} ]; then rm -f ${file} && cp /${file} 
${file}; fi
                    if [ -f  ${file} ]; then chmod a+rX ${file}; fi
                done
                rm -f usr/lib/zoneinfo/localtime
                mkdir -p usr/lib/zoneinfo
                ln -sf /etc/localtime usr/lib/zoneinfo/localtime
                rm -f lib/libnss_*so*
                tar cf - /lib/libnss_*so* 2>/dev/null |tar xf -
                umask $oldumask
            fi
            if start-stop-daemon --start --exec ${DAEMON} -- quiet-quick-start; 
then
                log_end_msg 0
            else
                log_end_msg 1
            fi
        fi
    ;;
    stop)
        RUNNING=$(running)
        log_daemon_msg "Stopping Postfix Mail Transport Agent" postfix
        if [ -n "$RUNNING" ]; then
            if ${DAEMON} quiet-stop; then
                log_end_msg 0
            else
                log_end_msg 1
            fi
        else
            log_end_msg 0
        fi
    ;;
    restart)
        $0 stop
        $0 start
    ;;
    
    force-reload|reload)
        log_action_begin_msg "Reloading Postfix configuration"
        if ${DAEMON} quiet-reload; then
            log_action_end_msg 0
        else
            log_action_end_msg 1
        fi
    ;;
    status)
        RUNNING=$(running)
        if [ -n "$RUNNING" ]; then
           log_success_msg "postfix is running"
           exit 0
        else
           log_success_msg "postfix is not running"
           exit 3
        fi
    ;;
    flush|check|abort)
        ${DAEMON} $1
    ;;
    *)
        log_action_msg "Usage: /etc/init.d/postfix 
{start|stop|restart|reload|flush|check|abort|force-reload}"
        exit 1
    ;;
esac
exit 0


-- debconf information:
* postfix/mailname: mail.jamie-thompson.co.uk
  postfix/tlsmgr_upgrade_warning:
  postfix/retry_upgrade_warning:
  postfix/relayhost:
  postfix/procmail: false
  postfix/bad_recipient_delimiter:
  postfix/rfc1035_violation: false
  postfix/mynetworks: 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
  postfix/protocols: ipv4
  postfix/recipient_delim: +
* postfix/main_mailer_type: Internet Site
  postfix/kernel_version_warning:
  postfix/chattr: false
  postfix/root_address:
  postfix/mydomain_warning:
  postfix/destinations: mail.jamie-thompson.co.uk, 
mail.bushey.jamie-thompson.co.uk, mrlinux.jamie-thompson.co.uk, 
mrlinux.bushey.jamie-thompson.co.uk, localhost.bushey.jamie-thompson.co.uk, 
jamie-thompson.co.uk, localhost
  postfix/not_configured:
  postfix/mailbox_limit: 0



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to