У меня проблема, когда вызов "sendmail" приводит к тому, что он просто сидит там около 5 секунд, прежде чем что-либо делать. Я попытался вызвать его с помощью «-d», и вот результат:
# sendmail -d [My email] <testmail
Exim version 4.76 uid=0 gid=0 pid=3711 D=fbb95cfd
Berkeley DB: Berkeley DB 5.1.25: (January 28, 2011)
Support for: crypteq iconv() IPv6 GnuTLS move_frozen_messages DKIM
Lookups (built-in): lsearch wildlsearch nwildlsearch iplsearch cdb dbm dbmnz dnsdb dsearch nis nis0 passwd
Authenticators: cram_md5 plaintext
Routers: accept dnslookup ipliteral manualroute queryprogram redirect
Transports: appendfile/maildir/mailstore autoreply lmtp pipe smtp
Fixed never_users: 0
Size of off_t: 8
Compiler: GCC [4.6.3]
Library version: GnuTLS: Compile: 2.12.14
Runtime: 2.12.14
Library version: PCRE: Compile: 8.12
Runtime: 8.12 2011-01-15
Total 12 lookups
WHITELIST_D_MACROS: "OUTGOING"
TRUSTED_CONFIG_LIST: "/etc/exim4/trusted_configs"
changed uid/gid: forcing real = effective
uid=0 gid=0 pid=3711
auxiliary group list: <none>
seeking password data for user "uucp": cache not available
getpwnam() succeeded uid=10 gid=10
Затем он сидит и ничего не делает в течение 5-10 секунд, прежде чем продолжить.
configuration file is /var/lib/exim4/config.autogenerated
log selectors = 00000ffc 00612001
cwd=/root 3 args: sendmail -d [My email]
...etc
Что он делает в это время и как мне его остановить? К сожалению, указание "-odb" для запуска в фоновом режиме делает не решить проблему - это фоны после задержка.
Я запускаю Exim 4.76 на Ubuntu Server 12.04. Exim настроен на отправку всей электронной почты через смарт-хост.
Вот результат работы strace:
getpwnam() succeeded uid=10 gid=10
open("/etc/resolv.conf", O_RDONLY|O_CLOEXEC) = 4
open("/etc/resolv.conf", O_RDONLY|O_CLOEXEC) = 4
open("/etc/host.conf", O_RDONLY|O_CLOEXEC) = 4
open("/etc/hosts", O_RDONLY|O_CLOEXEC) = 4
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 4
open("/lib/x86_64-linux-gnu/libnss_dns.so.2", O_RDONLY|O_CLOEXEC) = 4
open("/etc/hosts", O_RDONLY|O_CLOEXEC) = 4
configuration file is /var/lib/exim4/config.autogenerated
Строка "libnss_dns.so.2" - последняя, выводимая перед задержкой.
Ответил Тонни в комментариях - первый DNS-сервер был недопустимым, поэтому он ждал, когда он истечет. Удаление недействительной записи DNS решило проблему.