syslog-1.4.1-12
Tomasz Pala
gotar at polanet.pl
Mon Sep 20 13:26:20 CEST 2004
Is broken.
# /etc/rc.d/init.d/syslog restart
System logger service is not running.
Starting System logger service.....................................[ FAIL ]
syslogd: Already running.
# /etc/rc.d/init.d/syslog status
syslogd (pid 1300) is running...
# /etc/rc.d/init.d/syslog stop
System logger service is not running.
# /etc/rc.d/init.d/syslog restart
System logger service is not running.
Starting System logger service.....................................[ FAIL ]
syslogd: Already running.
I've traced it to the following:
# killall syslogd
# syslogd -m 0; echo $?
zsh: terminated syslogd -m 0
143
# killall syslogd
# syslogd -m 0; echo $?
0
# killall syslogd
# syslogd -m 0; echo $?
0
# killall syslogd
# syslogd -m 0; echo $?
0
# killall syslogd
# syslogd -m 0; echo $?
zsh: terminated syslogd -m 0
143
but I couldn't find the rule. In every case syslogd HAS started.
strace says:
open("/var/run/syslogd.pid", O_RDONLY) = -1 ENOENT (No such file or
directory)
brk(0x8074000) = 0x8074000
fork() = 1436
--- SIGTERM (Terminated) @ 0 (0) ---
+++ killed by SIGTERM +++
for 'broken' start, and:
open("/var/run/syslogd.pid", O_RDONLY) = -1 ENOENT (No such file or directory)
brk(0x807c000) = 0x807c000
fork() = 1477
rt_sigaction(SIGTERM, {0x804bad0, [TERM], SA_RESTORER|SA_RESTART, 0x46ef4718}, {SIG_DFL}, 8) = 0
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigaction(SIGCHLD, NULL, {SIG_DFL}, 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
nanosleep({300, 0}, 0xbc38ea64) = -1 EINTR (Interrupted system call)
--- SIGTERM (Terminated) @ 0 (0) ---
exit_group(0) = ?
for good one. It looks like some race for me.
-d Turns on debug mode. Using this the daemon will not proceed a
fork(2) to set itself in the background, but opposite to that
And with -d always returns 0.
--
GoTaR <priv0.onet.pl->gotar>
http://vfmg.sourceforge.net/
More information about the pld-devel-en
mailing list