Il problema
Vuoi gestire un server Sendmail e per varie ragioni non puoi o non vuoi usare Postfix, Exim o Qmail. Tuttavia, Sendmail non deve consegnare la posta elettronica, ma solo inoltrarla a un smarthost.
Tutto questo funziona, ma: Sendmail non può consegnare la posta senza una risoluzione dei nomi funzionante. Questo è particolarmente fastidioso perché è superfluo quando si usa uno smarthost.
Se si richiamano le mail non consegnate con mailq -Ac
si vedranno voci con deferred
e hostname lookup
.
La causa
La causa esatta non è (esattamente) nota. Sendmail cerca di risolvere o controllare i nomi di host o di dominio in vari punti.
Una soluzione
Creare un file /etc/mail/service.switch
con il seguente contenuto:
/etc/mail/service.switch:hosts files
aliases files
Ora aggiungi la seguente riga al tuo codice sendmail.mc
:
/etc/mail/sendmail.mc:define(`confSERVICE_SWITCH_FILE',`/etc/mail/service.switch')dnl
Non dimenticare di ricostruire il file sendmail.cf
chiamando make
, e poi riavviare o almeno ricaricare Sendmail.