# mailinglisten/mailman broken



## pezi (6. März 2013)

Bei mir geht nach einem Update auf ISPConfig 3.0.5.1 die mailinglisten nicht mehr. Ob das Update wirklich ursächlich ist kann ich nicht sagen. Nachdem Update haben diese noch funktioniert - einige Tage später ist dann debian kernel update gekommen - und nach dem reboot funktioniert nichts mehr.

Listen können zwar angelegt werden - es kommt aber keine initiale E-Mail mehr. Weiters sind virtuellen E-Mails der Listen sind nicht funktionell. Diese sind unbekannt für den Mail-Server

Ich versuche  nun möglich viel Infos zu liefern.
OS Debian 6.0/SPConfig 3.0.5.1

/var/log/mailman/error

```
Mar 05 13:44:02 2013 (13228) command failed: /etc/mailman/virtual_to_transport.sh /var/lib/mailman/data/virtual-mailman (status: 2, No such file or directory)
```
/var/lib/mailman/data/virtual-mailman existiert aber

```
ls -l /var/lib/mailman/data/virtual-mailman
-rw-rw---- 1 root list 0  5. Mär 14:58 /var/lib/mailman/data/virtual-mailman
```
Ich weiß nicht so richtig wo ich da ansetzen soll.

Gruß
Peter


----------



## Till (6. März 2013)

Schau mal bitte ob folgendes script da ist:

/etc/mailman/virtual_to_transport.sh

Und hast Du biem ispconfig update "reconfigure services" ausgewählt?


----------



## pezi (6. März 2013)

Die Datei 

-rwxr-x--- 1 root list 4463 26. Feb 18:55 virtual_to_transport.sh
ist vorhanden. Nur ausführen kann man diese nicht - da kommen Fehlermeldungen. Bin mir aber nicht sicher ob man diese Datei direkt als shell script aufrufen können sollte. 

BTW: Die Fehlermeldung von Thread
http://www.howtoforge.de/forum/inst...rtual-mailman-db-older-than-source-file-6644/
hatte ich auch. 
postmap /var/lib/mailman/data/virtual-mailman
hat das Problem gelöst. Bei dieser Problembehebung habe ich versucht genalias aufzurufen. Da kommt folgende Meldung

```
/etc/mailman/virtual_to_transport.sh: 55: MAILMAN_SITE_LIST: not found
/etc/mailman/virtual_to_transport.sh: 60: DEFAULT_URL_PATTERN: not found
/etc/mailman/virtual_to_transport.sh: 61: PRIVATE_ARCHIVE_URL: not found
/etc/mailman/virtual_to_transport.sh: 62: IMAGE_LOGOS: not found
/etc/mailman/virtual_to_transport.sh: 66: DEFAULT_EMAIL_HOST: not found
/etc/mailman/virtual_to_transport.sh: 69: DEFAULT_URL_HOST: not found
/etc/mailman/virtual_to_transport.sh: 72: Syntax error: word unexpected (expecti                                                                                                                     ng ")")
Traceback (most recent call last):
  File "./genaliases", line 116, in <module>
    main()
  File "./genaliases", line 106, in main
    MTA.create(mlist, nolock=True, quiet=quiet)
  File "/var/lib/mailman/Mailman/MTA/Postfix.py", line 232, in create
    _update_maps()
  File "/var/lib/mailman/Mailman/MTA/Postfix.py", line 60, in _update_maps
    raise RuntimeError, msg % (vcmd, status, errstr)
RuntimeError: command failed: /etc/mailman/virtual_to_transport.sh /var/lib/mail                                                                                                                     man/data/virtual-mailman (status: 2, No such file or directory)
```
virtual_to_transport.sh

```
# -*- python -*-

# Copyright (C) 1998,1999,2000 by the Free Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
# 02110-1301 USA


"""This is the module which takes your site-specific settings.

From a raw distribution it should be copied to mm_cfg.py.  If you
already have an mm_cfg.py, be careful to add in only the new settings
you want.  The complete set of distributed defaults, with annotation,
are in ./Defaults.  In mm_cfg, override only those you want to
change, after the

  from Defaults import *

line (see below).

Note that these are just default settings - many can be overridden via the
admin and user interfaces on a per-list or per-user basis.

Note also that some of the settings are resolved against the active list
setting by using the value as a format string against the
list-instance-object's dictionary - see the distributed value of
DEFAULT_MSG_FOOTER for an example."""


#######################################################
#    Here's where we get the distributed defaults.    #

from Defaults import *

##############################################################
# Put YOUR site-specific configuration below, in mm_cfg.py . #
# See Defaults.py for explanations of the values.            #

#-------------------------------------------------------------
# The name of the list Mailman uses to send password reminders
# and similar. Don't change if you want mailman-owner to be
# a valid local part.
MAILMAN_SITE_LIST = 'mailman'

#-------------------------------------------------------------
# If you change these, you have to configure your http server
# accordingly (Alias and ScriptAlias directives in most httpds)
DEFAULT_URL_PATTERN = 'https://%s/cgi-bin/mailman/'
PRIVATE_ARCHIVE_URL = '/cgi-bin/mailman/private'
IMAGE_LOGOS         = '/images/mailman/'

#-------------------------------------------------------------
# Default domain for email addresses of newly created MLs
DEFAULT_EMAIL_HOST = 'mail.xxx.at'
#-------------------------------------------------------------
# Default host for web interface of newly created MLs
DEFAULT_URL_HOST   = 'mail.xxx.at'
#-------------------------------------------------------------
# Required when setting any of its arguments.
add_virtualhost(DEFAULT_URL_HOST, DEFAULT_EMAIL_HOST)

#-------------------------------------------------------------
# The default language for this server.
DEFAULT_SERVER_LANGUAGE = 'de'

#-------------------------------------------------------------
# Iirc this was used in pre 2.1, leave it for now
USE_ENVELOPE_SENDER    = 0              # Still used?

#-------------------------------------------------------------
# Unset send_reminders on newly created lists
DEFAULT_SEND_REMINDERS = 0

#-------------------------------------------------------------
# Uncomment this if you configured your MTA such that it
# automatically recognizes newly created lists.
# (see /usr/share/doc/mailman/README.Exim4.Debian or
# /usr/share/mailman/postfix-to-mailman.py)
# MTA=None   # Misnomer, suppresses alias output on newlist

#-------------------------------------------------------------
# Uncomment if you use Postfix virtual domains (but not
# postfix-to-mailman.py), but be sure to see
# /usr/share/doc/mailman/README.Debian first.
MTA='Postfix'
POSTFIX_STYLE_VIRTUAL_DOMAINS = []
#-------------------------------------------------------------
# Uncomment if you want to filter mail with SpamAssassin. For
# more information please visit this website:
# http://www.jamesh.id.au/articles/mailman-spamassassin/
# GLOBAL_PIPELINE.insert(1, 'SpamAssassin')

POSTFIX_MAP_CMD = '/etc/mailman/virtual_to_transport.sh'

# Note - if you're looking for something that is imported from mm_cfg, but you
# didn't find it above, it's probably in /usr/lib/mailman/Mailman/Defaults.py.
```
Ich denke schon, dass ich die Services beim Update rekonfiguriert habe. Die Abfrage bezüglich Port,SLL, etc ist gekommen.

Gruß
Peter


----------



## Till (6. März 2013)

In der virtual_to_transport.sh muss folgendes drin stehen:


```
#!/bin/sh
sed -r -e 's/(^[^#]\S+\s+).+$/\1local/' $1 > /var/lib/mailman/data/transport-mailman
/usr/sbin/postmap /var/lib/mailman/data/transport-mailman
```
Lösche bitte mal den gesamten Inhalt der datei und ersetze ihn durch den obigen.


----------



## pezi (6. März 2013)

Danke - jetzt funktioniert es "fast". Bei einer neuen Liste bekomme ich die intiale E-Mail. Aber
postmap /var/lib/mailman/data/virtual-mailman
musste ich händisch aufrufen damit die neuen virtuellen E-Mail Ziele zur Verfügung standen.

Weiters musste ich laut 
http://www.howtoforge.de/forum/allgemein-11/mailman-5559/
suexec für die Domain abdrehen - musste ich früher nicht um auf die Mailman Oberfläche zu kommen.


----------



## Till (6. März 2013)

Das postmap wird von ispconfig ausgefühert. Da aber eer erste teil fehlschlug, fehltes es jetzt. Suexec geht nie mit mailman, also kann es auch vorher nicht funktioniert haben. Es kann aber sein dass du das interface vorher über einen anderen vhost aufgerufen hast. Suexec abschlaten solltest du aber nie für eine kunenwebseite.


----------



## pezi (7. März 2013)

Ich meinte mit meinem Posting eigentlich folgendes:

1.) Den Fix nach Deinen Vorgaben umgesetzt
2.) Neue Liste angelegt - die virtuellen E-Mails waren nicht erreichbar
3.) Ein Blick in die Logfiles 
warning: database /var/lib/mailman/data/virtual-mailman.db is older than source file /var/lib/mailman/data/virtual-mailman
4.) manueller Aufruf von
postmap /var/lib/mailman/data/virtual-mailman
Jetzt funktionier erst die Liste

Soeben noch einmal dieses Szenario durchgespielt:
-rw-rw---- 1 root list  2420  7. Mär 07:34 virtual-mailman
-rw-r--r-- 1 root root 12288  6. Mär 18:27 virtual-mailman.db
Das Neuanlegen einer Liste auf meinem System triggert keinen (erfolgreichen) Aufruf von postmap /var/lib/mailman/data/virtual-mailman

Gruß
Peter


----------



## Till (7. März 2013)

Ok, habe ich zum  Bugtracker hinzugefügt.


----------



## darkness_08 (7. März 2013)

Ich habe soweit das gleiche Problem bzw, es stellt sich bei mir genauso dar.

Allerdings habe ich noch das Problem, dass Mailman die ankommenden Mail auf test@list.domain.tld
nicht erkennt. 

Diese landen immer bei root.

Mailman zeigt sie weder im Archiv an noch werden sie an die Empfänger weitergeleitet.

Meine besonderheit ist, dass ich Mailman nachträglich installiert habe und dann ein Update services durchgeführt habe.
Daher kann ich auch nicht sagen, ob der Fehler direkt damit zusammen hängt.


----------



## pezi (7. März 2013)

Wie  beim User darknes habe ich mailman nach der eigentichen Installation von ISPconfig3 installiert, da der Bedarf sich erst viel später einstellte.


----------



## darkness_08 (10. März 2013)

Mir ist aufgefallen das nach dem löschen einer Liste die Datein transport-mailman und virtual-mailman nicht angepasst werden. Die Einträge der gelöschten liste bleiben weiterhin bestehen.
Die Datei aliases wird aktualisert.


----------

