Bug#396944: running exim4 not found

Bruce Sass bmsass at shaw.ca
Mon Nov 6 13:15:37 CET 2006


On Mon November 6 2006 04:32, Marc Haber wrote:
> Now, kill all running exims manually,

Do you mean with "killall" (leaving a stale pidfile in /var/run/exim4),
or "/etc/init.d/exim4 stop"?

I have confirmed that rm-ing the pidfile and reinstalling exim4-daemon-light
results in a paniclog entry, which is what I saw with the last upgrade...

root at onegee:~# rm /var/run/exim4/exim.pid
root at onegee:~# apt-get --reinstall install exim4-daemon-light
Reading package lists... Done
Building dependency tree... Done
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 0 not upgraded.
Need to get 0B/411kB of archives.
After unpacking 0B of additional disk space will be used.
Do you want to continue [Y/n]?
Preconfiguring packages ...
(Reading database ... 350619 files and directories currently installed.)
Preparing to replace exim4-daemon-light 4.63-10 (using .../exim4-daemon-light_4.63-10_i386.deb) ...
Stopping MTA:.
Unpacking replacement exim4-daemon-light ...
Setting up exim4-daemon-light (4.63-10) ...
Starting MTA: exim4.

root at onegee:~# tail -f /var/log/exim4/mainlog
2006-11-06 04:33:56 IPv6 socket creation failed: Address family not supported by protocol
2006-11-06 04:33:57 Failed to create IPv6 socket for wildcard listening (Address family not supported by protocol): will use IPv4
2006-11-06 04:33:57 socket bind() to port 25 for address (any IPv4) failed: Address already in use: waiting 30s before trying again (9 more tries)
<...>
2006-11-06 04:38:27 socket bind() to port 25 for address (any IPv4) failed: Address already in use: daemon abandoned

root at onegee:~# killall exim4

...leaving me with no daemon and no pidfile.

> start one again, and then invoke start-stop-daemon --stop --pidfile /var/run/exim4/exim.pid
> --oknodo --retry 30 --exec /usr/sbin/exim4 and see whether the daemon
> stops, and/or the pid file still exists.
>
> An strace -f of that start-stop-daemon issue would be great as well.

root at onegee:~# /etc/init.d/exim4 start
Starting MTA: exim4.
[daemon running and pidfile exists]
root at onegee:~# strace -f start-stop-daemon --stop --pidfile /var/run/exim4/exim.pid --oknodo --retry 30 --exec /usr/sbin/exim4
execve("/sbin/start-stop-daemon", ["start-stop-daemon", "--stop", "--pidfile", "/var/run/exim4/exim.pid", "--oknodo", "--retry", "30", "--exec", "/usr/sbin/exim4"], [/* 11 vars */]) = 0
uname({sys="Linux", node="onegee", ...}) = 0
brk(0)                                  = 0x804d000
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xa7fbe000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xa7fbd000
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=111199, ...}) = 0
mmap2(NULL, 111199, PROT_READ, MAP_PRIVATE, 3, 0) = 0xa7fa1000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/tls/i686/cmov/libc.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\240O\1"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=1241580, ...}) = 0
mmap2(NULL, 1247388, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xa7e70000
mmap2(0xa7f97000, 28672, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x127) = 0xa7f97000
mmap2(0xa7f9e000, 10396, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xa7f9e000
close(3)                                = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xa7e6f000
mprotect(0xa7f97000, 20480, PROT_READ)  = 0
set_thread_area({entry_number:-1 -> 6, base_addr:0xa7e6f6c0, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) = 0
munmap(0xa7fa1000, 111199)              = 0
brk(0)                                  = 0x804d000
brk(0x806e000)                          = 0x806e000
stat64("/usr/sbin/exim4", {st_mode=S_IFREG|S_ISUID|0755, st_size=688128, ...}) = 0
open("/var/run/exim4/exim.pid", O_RDONLY|O_LARGEFILE) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=6, ...}) = 0
mmap2(NULL, 131072, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xa7e4f000
read(3, "17741\n", 131072)              = 6
readlink("/proc/17741/exe", "/usr/sbin/exim4", 256) = 15
stat64("/usr/sbin/exim4", {st_mode=S_IFREG|S_ISUID|0755, st_size=688128, ...}) = 0
close(3)                                = 0
munmap(0xa7e4f000, 131072)              = 0
kill(17741, SIGTERM)                    = 0
gettimeofday({1162813404, 246666}, NULL) = 0
gettimeofday({1162813404, 247096}, NULL) = 0
open("/var/run/exim4/exim.pid", O_RDONLY|O_LARGEFILE) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=6, ...}) = 0
mmap2(NULL, 131072, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xa7e4f000
read(3, "17741\n", 131072)              = 6
readlink("/proc/17741/exe", 0xafeb6930, 256) = -1 ENOENT (No such file or directory)
close(3)                                = 0
munmap(0xa7e4f000, 131072)              = 0
exit_group(0)                           = ?
Process 17873 detached
root at onegee:~# ps aux|grep exim
root at onegee:~# ls -la /var/run/exim4
total 5
drwxr-x---  2 Debian-exim Debian-exim   72 Nov  6 04:39 .
drwxr-xr-x 22 root        root        1048 Nov  5 21:31 ..
-rw-r--r--  1 root        Debian-exim    6 Nov  6 04:39 exim.pid


- Bruce




More information about the Pkg-exim4-maintainers mailing list