Hallo,
ich versuche unter SuSE 9.1 Prof. das Linux Magazin 12.04 Postfix Howto durchzuarbeiten.
Ich habe folgendes Problem. Wenn ich in /etc/init.d cyrus starte scheint dieser zu starten. Im Ereignissprotokoll steht dann folgendes:
Jan 18 15:08:45 mail master[3900]: setrlimit: Unable to set file descriptors limit to -1: Operation not permitted
Jan 18 15:08:45 mail master[3900]: retrying with 1024 (current max)
ein “cyrus status” verrät mir, dass cyrus nicht läuft. Hier meine /etc/cyrus.conf:
START {
# do not delete this entry!
recover cmd=”ctl_cyrusdb -r”
}
# UNIX sockets start with a slash and are put into /var/lib/imap/socket
SERVICES {
# add or remove based on preferences
imap cmd=”imapd” listen=”213.252.150.136:imap” prefork=0
imaplocal cmd=”imapd -C /etc/imapd-local.conf” listen=”127.0.0.1:imap”
prefork=0
imaps cmd=”imapd -s” listen=”213.252.150.136:imaps” prefork=0
imapslocal cmd=”imapd -C /etc/imapd-local.conf” listen=”127.0.0.1:imaps”
prefork=0
pop3 cmd=”pop3d” listen=”pop3″ prefork=0
pop3s cmd=”pop3d -s” listen=”pop3s” prefork=0
sieve cmd=”timsieved” listen=”213.252.150.136:sieve” prefork=0
sievelocal cmd=”timsieved -C /etc/imapd-local.conf listen=”127.0.0.1:sieve”
prefork=0
# at least one LMTP is required for delivery
lmtpunix cmd=”lmtpd” listen=”/usr/lib/cyrus/bin/lmtpd” prefork=0
}
EVENTS {
# this is required
checkpoint cmd=”ctl_cyrusdb -c” period=30
# this is only necessary if using duplicate delivery suppression
delprune cmd=”ctl_deliver -E 3″ period=1440
# this is only necessary if caching TLS sessions
tlsprune cmd=”tls_prune” period=1440
}
Bei dem System handelt es sich um ein SuSE 9.1. , Postfix 2.1.4.
Ein “cyradm –user cyrus –server localhost –auth plain” schlägt mit einem cyradm: cannot connect to server fehl.
Danke …..
Hallo Rene,
das ist schon eine recht ausführliche Fehlerbeschreibung. Ich frage trotzdem noch mal nach:
> Bei dem System handelt es sich um ein SuSE 9.1. , Postfix 2.1.4.
woher kommt das postfix (von SuSE oder selbst compiliert.)
Als Fehlerursache sind Benutzerrechte denkbar
> Jan 18 15:08:45 mail master[3900]: setrlimit: Unable to set file descriptors limit to -1: Operation not permitted
Welcher Nutzer startet postfix? Hat der Zugriff zu den Dateien? Ob postfix wirklich startete sieht man mit
ps -elf
mfg
Andreas
Hallo Rene,
Postfix und Cyrus haben zunächst mal nix miteinander zu tun. Postfix ist ein MTA, der Mails (SMTP) annimmt – oder versendet – und nach Annahme weiter leiten kann an einem MDA (cyrus, uw-imap, courier etc.).
Mit dem Cyrus hast du dir IMHO den besten IMAP-Server ausgesucht (wenn du POP machen willst – nimm was anderes, der Aufwand lohnt nicht). Leider ist der Cyrus auch etwas zickig, vorallem was die Authentifizierung (SASL) angeht.
Cyrus benutzt je nach Konfig – ich kenne die von Suse nicht – mehrere Logfiles. Du solltest zumindest noch ein imapd.log haben (schau mal in /etc/syslog.conf nach).
Welche Version vom Cyrus hast du ? Neuere Versionen haben statt “ctl_deliver” jetzt “cyr_expire”. Die cyrus.conf ist bereits ziemlich aufgeblasen. Zum einfacheren Testen kannst du die jetzige sichern und das Beispiel aus “man cyrus.conf” nehmen.
In diesem Sinne solltest du unbedingt die Zeile
lmtpunix cmd=”lmtpd” listen=”/usr/lib/cyrus/bin/lmtpd” prefork=0
überprüfen. “listen” muss ein Pfad zu einem Socket sein (oder ip:port), und dein Pfad sieht extrem verdächtig nach dem lmtp-Daemon aus – “ls -al usr/lib/cyrus/bin/lmtpd” muss ein “s” an erster Stelle der Berechtigungen haben um ein Socket zu sein ! Schau mal ob du nicht in /var/imap/socket/ einen hast.
Eine wichtige Datei hast du nicht geposted: /etc/imapd.conf. Darin werden so ziemlich alle Pfade definiert. Evtl. existiert da was nicht oder die Berechtigungen stimmen nicht.
Das Problem mit den limits sollte keines sein, Cyrus probiert zunächst den Wert auf unlimited (-1) zu setzen und nimmt dann den Wert den du dir mit “ulimit -a” anzeigen lassen kannst; s.a. “man limits”.
Im der URL unten findest du detaillierte Hinweise zum Zusammenspiel Postfix/Cyrus.