Ich habe einen Backup-Mail-Server für den Fall, dass der Haupt-Server ausfällt. In diesem Fall werden die E-Mails auf dem Sicherungsserver abgelegt und bleiben dort, bis der Hauptserver wieder verfügbar ist.
Wenn ich einige Male warte, wird die Zustellung automatisch ausgeführt, sobald der Hauptserver wieder verfügbar ist, es kann jedoch lange dauern. So erzwingen Sie einen Sendewiederholungsversuch aller Post?
Zum Beispiel: postqueue -p: Gib mir eine Liste von Mails
Ich habe dann postqueue -f ausprobiert (von der Manpage: Flush the queue: Versuch, alle Mails in der Warteschlange zuzustellen.). Es hat sicher die Warteschlange geleert, aber die Mails wurden nicht zugestellt ...
postqueue -q
. Es gibtsendmail -q
sendmail-Syntax zu unterstützen, damit Postfix sendmail vollständig ersetzen kann, aber das ist ein Synonym. Die verschiedenen Buchstaben sind jsut, da Postfix andere Buchstaben als sendmail auswählte.Antworten:
Laut postqueue (1) können Sie einfach
postqueue -f
Ihre Mail-Warteschlange leeren . Wenn die E-Mails nach dem Leeren der Warteschlange nicht zugestellt werden, sondern in die Warteschlange gestellt werden, möchten Sie möglicherweise Ihre E-Mail-Protokolle auf Fehler überprüfen.Ein Blick auf postsuper (1) könnte ebenfalls hilfreich sein. Möglicherweise sind die Nachrichten in der Warteschleife und müssen zuerst freigegeben werden.
quelle
postqueue -f
sollte arbeiten. Wenn nicht, hat es einen guten Grund dafür. Überprüfen Sie die Protokolle. Auch pfqueue ist ein sehr nützlicher Befehl für Mail - Spool - Inspektion.quelle
sendmail -q
Versucht die Zustellung aller Mails in der Warteschlange sofort erneut.quelle
postqueue
Manpage: "-f Leere die Warteschlange: versuche, alle in der Warteschlange befindlichen E-Mails zuzustellen. Diese Option implementiert den traditionellen Befehl" sendmail -q ", indem du den Postfix qmgr (8) -Dämon kontaktierst." => Sie sind synonym und machen genau das gleiche. "postqueue -s domain.tld
sollte dazu führen, dass der Backup-Relay-Computer alle E-Mails für Ihre Site löscht. Die Standardeinstellung für Postfix ermöglicht das Leeren pro Site für alle Domänen inrelay_domains
.postqueue -f
Dies wird auch durchgeführt, es werden jedoch auch E-Mails für externe Sites gesendet, dh es wird mehr getan, als Sie benötigen.Wie stellen Sie fest, dass die Mail nicht zugestellt wurde? Befinden sie sich noch auf dem Sicherungshost oder wurden sie an den Haupthost gesendet und sind dann verloren gegangen?
quelle