Verzögerung der Mail-Zustellung des Terminals in Mac OS X

2954
cmaughan

Ich verwende Mail vom Mac OS X-Terminal, um mir die Ergebnisse einer Datenbankabfrage per E-Mail zu senden. Meistens funktioniert es, aber manchmal dauert es lange, bis die Mail eintrifft (oft wenn ein ähnliches Skript ausgeführt wird). Anscheinend gibt es eine Art Sendewarteschlange, aber ich kann keine Dokumentation finden, die dies erwähnt. Muss ich etwas tun, um die E-Mails vom Terminal zu löschen?

UPDATE: Manchmal scheint es nicht einmal zu einer Zustellung zu kommen, obwohl ich an der Konsole keine Fehler bekomme. Sehr merkwürdig.

2

3 Antworten auf die Frage

5
Doug Harris

OS X wird mit Postfix installiert und für die grundlegende Verwendung konfiguriert. Die Konfigurationsdateien befinden sich in /etc/postfix. Dokumentation bei postfix.org .

Suchen Sie /var/log/mail.lognach möglichen Fehlermeldungen.

Suchen Sie /var/spool/postfixnach Nachrichten in der Warteschlange, die Postfix akzeptiert hat, aber noch nicht ausgegangen ist.

Meine Vermutung ist, dass Ihr ISP ausgehende Nachrichten verhindert. Durch das Blockieren des für Port 25 bestimmten ausgehenden Datenverkehrs auf anderen Servern können ISPs Spam blockieren, der unwissentlich von infizierten Computern gesendet wird. Der ISP lässt Ihren Computer nur eine Verbindung zu Port 25 auf seinem designierten SMTP-Server herstellen.

Wenn dies Ihr Problem ist, fügen Sie eine Zeile mit smtp_fallback_relay hinzu, um /etc/postfix/main.cfdieser Ansicht zu entsprechen :

smtp_fallback_relay = smtp.comcast.net, smtp.myisp.net 

(Ersetzen dieser Domänennamen durch die Domänen der SMTP-Server Ihres Internetdienstanbieters)

1
Jonathan Mitchell

Bei SnowLeopard ist postfix vorkonfiguriert, um bei Bedarf von launchd gestartet zu werden (siehe /system/library/org.postfix.master.plist).

In meinem Fall wurde Mail ohne PostFix-Konfiguration gesendet, der Mailserver des Empfängers lehnte dies jedoch ab:

master-mini postfix/smtp[3691]: 0200D6FFBF0: to=<rubber@ball.com>, relay=mail.example.com[xx.xx.xx.xx]:25, delay=2.7, delays=0.01/0/1.9/0.76, dsn=5.0.0, status=bounced (host mail.example.com[xx.xx.xx.xx] said: 550-Verification failed for <nobody@master-mini.local> 550-The mail server could not deliver mail to nobody@master-mini.local. The account or domain may not exist, they may be blacklisted, or missing the proper dns entries. 550 Sender verify failed (in reply to RCPT TO command)) 

Der Mailserver des Empfängers beschwert sich, da es sich bei master-mini.local (der lokale Hostname) um einen ungültigen Domänennamen handelt. Die Top-Level-Pseudo-Domain local wird von Zeroconf verwendet.

In diesem Fall bestand die Lösung darin, /etc/postfix/main.cf zu bearbeiten und myhostname auf eine gültige Domäne zu aktualisieren.

0
marc.guenther

Ich denke, das passiert, weil Postfix in MacOSX> = 10.4 so konfiguriert ist, dass "on demand" ausgeführt wird. Um es dauerhaft zu aktivieren, müssen Sie bearbeiten

/System/Library/LaunchDaemons/org.postfix.master.plist

und einige Einstellungen hinzufügen:

<key>RunAtLoad</key> <true/> <key>OnDemand</key> <false/> 

Siehe auch das Posting von stephendv hier:

http://hints.macworld.com/article.php?story=20031025022626398