Sendmail hängt / Mail hängt

Sendmail hängt / Mail hängt

Auf allen Computern funktioniert Sendmail einwandfrei, bis auf einem.

Alle haben genau das gleiche Setup für den /etc/mail-Konfigurationsordner. Ich habe rsync verwendet, um sicherzustellen, dass sie alle übereinstimmen.

Normalerweise funktioniert dieser Befehl einwandfrei ...

sendmail -t < meine-email-datei.eml

Aber auf diesem einen Computer (alle laufen unter Ubuntu 20.04) bleibt der Prozess einfach hängen.

Ich habe "sendmail -t" ausprobiert, mit dem ich eine E-Mail direkt von der Kommandozeile aus verfassen kann. Ich drücke STRG+D und nichts passiert. Ich habe versucht, den Befehl "mail[email geschützt]" und konnte verfassen, aber als ich zur CC:-Zeile kam, blieb es hängen. Durch Drücken von STRG+Z konnte ich aussteigen und die E-Mail wurde schließlich gesendet.

Was führt dazu, dass sendmail/mail am Dateiende hängen bleibt?

Es scheint keine Möglichkeit zu geben, es vollständig zu deinstallieren und neu zu installieren. Ich habe „apt-get purge sendmail“ ausprobiert und das System sagt, es sei deinstalliert, aber wenn ich sendmail in die Befehlszeile eingebe, gelange ich immer noch in den Texteditormodus und sende immer noch E-Mails. Und „whereis sendmail“ zeigt es immer noch in /usr/sbin an.

Ich kann einfach nicht herausfinden, was hier los ist. Warum bleibt es bei EOF hängen? Und warum nur auf diesem einen Computer?

Danke!

---- UPDATE ---- Ich weiß wirklich nicht, wie man die Strace-Ausgabe liest, aber es wurde vorgeschlagen. Die Ausgabe sieht auf allen Maschinen größtenteils gleich aus, wobei dieser Teil das Ende ist ...

socket(AF_UNIX, SOCK_DGRAM|SOCK_CLOEXEC, 0) = 3
connect(3, {sa_family=AF_UNIX, sun_path="/dev/log"}, 110) = 0
sendto(3, "<18>May  6 12:27:19 sendmail[265"..., 120, MSG_NOSIGNAL, NULL, 0) = 120
write(2, "Program mode requires special pr"..., 69Program mode requires special privileges, e.g., root or TrustedUser.
) = 69
alarm(0)                                = 0
rt_sigprocmask(SIG_UNBLOCK, [ALRM], [], 8) = 0
getpid()                                = 26521
setuid(1000)                            = 0
exit_group(78)                          = ?
+++ exited with 78 +++

Aber auf dem einen Computer, der hängen bleibt, bleiben die Dinge hier bei clock_nanosleep stehen, was auf den anderen nicht der Fall ist.

socket(AF_UNIX, SOCK_DGRAM|SOCK_CLOEXEC, 0) = 3
connect(3, {sa_family=AF_UNIX, sun_path="/dev/log"}, 110) = 0
sendto(3, "<18>May  6 12:27:57 sendmail[688"..., 100, MSG_NOSIGNAL, NULL, 0) = 100
clock_nanosleep(CLOCK_REALTIME, 0, {tv_sec=60, tv_nsec=0}, 

Hier sind einige Informationen zu Sendmail auf diesem Server:

$ which sendmail
/usr/sbin/sendmail

$ ls -l $(which sendmail)
lrwxrwxrwx 1 root root 26 Feb  3 15:51 /usr/sbin/sendmail -> /etc/alternatives/sendmail

$ ls -l /etc/alternatives/sendmail
lrwxrwxrwx 1 root root 30 May  6 06:39 /etc/alternatives/sendmail -> /usr/libexec/sendmail/sendmail

Der Endpunkt auf anderen Servern endet bei /usr/lib/sm.bin/sendmail, aber ich bin nicht sicher, warum der Laptop mit dem Problem bei libexec/sendmail endet, da auf allen Ubuntu 22.04 läuft.

Antwort1

Ich bin gerade mit der gleichen 60-Sekunden-Verzögerung durch dieses Wurmloch gerutscht.

Ich hatte kein syslogd, aber nach der Installation erschien dies in /var/log/messages

May 12 17:52:43 myhost mail.crit sendmail[6955]: My unqualified host name (myhost) unknown; sleeping for retry 
May 12 17:52:47 myhost mail.crit sendmail[6960]: My unqualified host name (myhost) unknown; sleeping for retry 
May 12 17:52:52 myhost mail.crit sendmail[6974]: My unqualified host name (myhost) unknown; sleeping for retry

Versuchen Sie, den Hostnamen (und /etc/hosts) in einen FQDN – myhost.localdomain oder etwas Ähnliches – zu ändern.

verwandte Informationen