Irgendwann steht sie halt an, die Übersiedlung. Bei mir ging’s von einem Debian-Server zu einem Debian-Server. Kleiner Haken an der Geschichte: auch der Linkname (zur Administration und Useranmeldung) wird sich dabei ändern.
Zuerst einmal die Grundausstattung: siehe mailman installieren und konfigurieren
Die Kurzfassung davon ist:

  1. Alle Einträge für /etc/aliases und /etc/mail/virtusertable
  2. apt-get install mailman
  3. /etc/mailman/mm_cfg.py anpassen
  4. newlist mailman
  5. dpkg-reconfigure mailman

Man hat jetzt ein nacktes mailman das laufen sollte das über Web zugänglich sein sollte.
Jetzt kopiert man die Verzeichnisse

  • /var/lib/mailman/archives
  • /var/lib/mailman/data/
  • /var/lib/mailman/lists

auf den neuen Server. Die beste Methode ist es über ein TAR-Paket realisiert:

  1. cd /var/lib/mailman
  2. tar cvf archives.tar archives
  3. tar cvf data.tar data
  4. tar cvf lists.tar lists
  5. Kopiere die TAR-Pakete auf den neuen Server in das Verzeichnis /var/lib/mailman
  6. tar xvf archives.tar
  7. tar xvf data.tar
  8. tar xvf lists.tar

Schaut alles gut aus, außer man sieht sich die Listen über die Administrationsseite via Web an. Es werden nämlich keine der kopierten Mailinglisten angezeigt. Ich nehme an, das passiert durch die unterschiedlichen URLs. Der zielführende Tipp wurde unter How do I move a list to a different server-Mailman installation gefunden! Für jede Mailingliste ist jetzt folgender Befehl durchzuführen:
withlist -l -r fix_url name_der_mailingliste
Voilà … ein Refresh der Seite mit den Administrativen Links bringt alle Mailinglisten zum Vorschein.
Hinweis: der Ort der Konfigurationsdateien wird von Distribution zu Distribution unterschiedlich sein.

Facebooktwittergoogle_plusredditpinterestlinkedinmail

Die Installation ist untypischerweise bei Debian NICHT schnell gemacht. Als erstes sollte man seinen Mailserver entsprechend konfigurieren:
Bei mir ist das sendmail. Zuerst die Einstellung in der Datei /etc/mail/virtuser-table, die bei mir in Verwendung ist:

…
# mailman aliases
mailman@example.org             local-user
mailman-owner@example.org       local-user
…
mailman-admin@example.org        mailman-admin
mailman-bounces@example.org      mailman-bounces
mailman-confirm@example.org      mailman-confirm
mailman-join@example.org         mailman-join
mailman-leave@example.org        mailman-leave
mailman-owner@example.org        mailman-owner
mailman-request@example.org      mailman-request
mailman-subscribe@example.org    mailman-subscribe
mailman-unsubscribe@example.org  mailman-unsubscribe
…
mailing-list-admin@example.org        mailing-list-admin
mailing-list-bounces@example.org      mailing-list-bounces
mailing-list-confirm@example.org      mailing-list-confirm
mailing-list-join@example.org         mailing-list-join
mailing-list-leave@example.org        mailing-list-leave
mailing-list-owner@example.org        mailing-list-owner
mailing-list-request@example.org      mailing-list-request
mailing-list-subscribe@example.org    mailing-list-subscribe
mailing-list-unsubscribe@example.org  mailing-list-unsubscribe
…

Die Liste mailman ist für administrative Zwecke notwendig. Ohne diese Liste startet der mailman nicht, wie man später sehen wird. Für mailing-list ist der entsprechende Listenname einzusetzen, den man später als öffentliche Liste verwenden will!
Jetzt kann man in der Datei /etc/alias die entsprechenden Übergaben an die Mailinglist-Applikation hinterlegen:

…
mailman:         "|/var/mailman/mail/mailman post mailman"
mailman-admin:   "|/var/mailman/mail/mailman admin mailman"
mailman-bounces: "|/var/mailman/mail/mailman bounces mailman"
mailman-confirm: "|/var/mailman/mail/mailman confirm mailman"
mailman-join:    "|/var/mailman/mail/mailman join mailman"
mailman-leave:   "|/var/mailman/mail/mailman leave mailman"
mailman-owner:   "|/var/mailman/mail/mailman owner mailman"
mailman-request: "|/var/mailman/mail/mailman request mailman"
mailman-subscribe: "|/var/mailman/mail/mailman subscribe mailman"
mailman-unsubscribe:"|/var/mailman/mail/mailman unsubscribe mailman"
…
mailing-list:         "|/var/mailman/mail/mailman post mailing-list"
mailing-list-admin:   "|/var/mailman/mail/mailman admin mailing-list"
mailing-list-bounces: "|/var/mailman/mail/mailman bounces mailing-list"
mailing-list-confirm: "|/var/mailman/mail/mailman confirm mailing-list"
mailing-list-join:    "|/var/mailman/mail/mailman join mailing-list"
mailing-list-leave:   "|/var/mailman/mail/mailman leave mailing-list"
mailing-list-owner:   "|/var/mailman/mail/mailman owner mailing-list"
mailing-list-request: "|/var/mailman/mail/mailman request mailing-list"
mailing-list-subscribe: "|/var/mailman/mail/mailman subscribe mailing-list"
mailing-list-unsubscribe:"|/var/mailman/mail/mailman unsubscribe mailing-list"
…

So, jetzt aber zur Installation von mailman:

apt-get install mailman

Leider ist die Konfiguration damit nicht vollständig, selbst die während der Installation abgefragten Konfigurationseinstellungen werden nicht übernommen (ich habe als Sprachen en und de und dann als Standardsprachen de gewählt). Danach wird angemeckert, dass die Mailingliste mailman noch nicht angelegt sind, das merkt man dann auch beim weiteren Ablauf der Paketinstallation, die mit der Meldung:

Site list for mailman missing (looking for list named 'mailman'). ... (warning).
Please create it; until then, mailman will refuse to start. ... (warning).

Als nächstes die Konfigurationsdatei /etc/mailman/mm_cfg.py anpassen:

…
#-------------------------------------------------------------
# Default domain for email addresses of newly created MLs
DEFAULT_EMAIL_HOST = 'list.example.org'
#-------------------------------------------------------------
# Default host for web interface of newly created MLs
DEFAULT_URL_HOST   = 'lists.example.org'
#-------------------------------------------------------------
…

Als nächstes die angemeckerte Mailingliste mailman anlegen:

 newlist mailman

Den Hinweis, dass die entsprechenden Einträge in der Datei /etc/alias angelegt werden müssen, kann man negieren, weil wir das gleich am Beginn gemacht haben.
Der letzte Schritt ist jetzt das dpkg-reconfigure mailman um jetzt tatsächlich alles umzusetzen, was zuerst nicht gegangen ist, nämlich auch die Deutsche Sprache zu installieren (wenn man will auch andere) und diese dann als Standardsprache einzustellen. Am Ende wird mailman automatisch gestartet und in der Mailbox sollte die neue Mailingliste mailman angekündigt sein.
Im Verzeichnis /etc/mailman liegt die Datei apache.conf, die man als Vorlage für die Konfiguration des Webservers nehmen kann. Wenn der Webserver dann entsprechend konfiguriert ist (und die Konfiguration geladen wurde), steht einem der Zugriff via http nichts mehr im Wege.

Facebooktwittergoogle_plusredditpinterestlinkedinmail