home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 2007 January, February, March & April
/
Chip-Cover-CD-2007-02.iso
/
boot
/
i386
/
rescue
/
etc
/
init.d
/
syslog
< prev
Wrap
Text File
|
2006-11-29
|
4KB
|
165 lines
#! /bin/sh
#
# Copyright (c) 1996-2001 SuSE GmbH Nuernberg, Germany.
# Copyright (c) 2002-2003 SuSE Linux AG, Nuernberg, Germany.
#
# Author: Florian La Roche <florian@suse.de>, 1996
# Werner Fink <werner@suse.de>, 1998-2001
#
# /etc/init.d/syslog
#
### BEGIN INIT INFO
# Provides: syslog
# Required-Start: network
# Should-Start: earlysyslog
# Required-Stop: network
# Default-Start: 2 3 5
# Default-Stop:
# Description: Start the system logging daemons
### END INIT INFO
. /etc/sysconfig/syslog
BINDIR=/sbin
case "$SYSLOG_DAEMON" in
syslog-ng)
syslog=syslog-ng
config=/etc/syslog-ng/syslog-ng.conf
params="$SYSLOG_NG_PARAMS"
;;
*)
syslog=syslogd
config=/etc/syslog.conf
params="$SYSLOGD_PARAMS"
;;
esac
# add additional sockets to params
for variable in ${!SYSLOGD_ADDITIONAL_SOCKET*}; do
eval value=\$$variable
test -n "${value}" && test -d ${value%/*} && \
params="$params -a $value"
done
syslog_pid="/var/run/${syslog}.pid"
syslog_bin=${BINDIR}/$syslog
klog_bin=${BINDIR}/klogd
syslog_use=""
# check config and programs
test -s ${config} || {
echo 1>&2 "${config} does not exist"
if test "$1" == "stop" ; then exit 0 ; else exit 6 ; fi
}
test -x ${syslog_bin} || {
echo 1>&2 "${syslog_bin} is not installed"
if test "$1" == "stop" ; then exit 0 ; else exit 5 ; fi
}
test -x ${klog_bin} || {
echo 1>&2 "${klog_bin} is not installed"
if test "$1" == "stop" ; then exit 0 ; else exit 5 ; fi
}
test -s /var/lock/subsys/syslogd && {
read -t 5 syslog_use < /var/lock/subsys/syslogd
}
test -z "$syslog_use" && syslog_use=${syslog_bin}
#
# Do not translate symbol addresses for 2.6 kernel
#
case `uname -r` in
0.*|1.*|2.[0-4].*)
;;
*)
KLOGD_PARAMS="${KLOGD_PARAMS:+$KLOGD_PARAMS }-x"
;;
esac
. /etc/rc.status
rc_reset
case "$1" in
start)
if test -f /var/lock/subsys/earlysyslog ; then
# Syslog service already done
rm -f /var/lock/subsys/earlysyslog
exit 0
fi
if test "$2" = "early" ; then
# Start syslog service early
touch /var/lock/subsys/earlysyslog
fi
if ! test -e /dev/xconsole ; then
mkfifo -m 0600 /dev/xconsole
chown root:tty /dev/xconsole
fi
if test -s /var/run/klogd.pid ; then
killproc ${klog_bin}
fi
if test -s ${syslog_pid} ; then
killproc -p ${syslog_pid} ${syslog_use}
echo -n "Re-"
fi
echo -n "Starting syslog services"
test -z "$KERNEL_LOGLEVEL" && KERNEL_LOGLEVEL=1
startproc -p ${syslog_pid} ${syslog_bin} ${params}
rc_status
# Remember the currently used syslog daemon
echo ${syslog_bin} > /var/lock/subsys/syslogd
if test $? -eq 0 ; then
startproc ${klog_bin} -c $KERNEL_LOGLEVEL $KLOGD_PARAMS
rc_status
fi
rc_status -v
;;
stop)
rm -f /var/lock/subsys/earlysyslog
test "$2" = "early" && exit 0
echo -n "Shutting down syslog services"
killproc -TERM ${klog_bin} ; rc_status
killproc -p ${syslog_pid} -TERM ${syslog_use} ; rc_status -v
rm -f /var/lock/subsys/syslogd
;;
try-restart|condrestart)
if test "$1" = "condrestart"; then
echo "${attn} Use try-restart ${done}(LSB)${attn} instead${norm}"
fi
$0 status
if test $? = 0; then
$0 restart
else
rc_reset # Not running is not a failure.
fi
rc_status
;;
restart)
$0 stop
$0 start
rc_status
;;
reload|force-reload)
echo -n "Reload syslog service"
killproc -TSTP ${klog_bin} ; rc_status
killproc -p ${syslog_pid} -HUP ${syslog_use} ; rc_status
killproc -CONT ${klog_bin} ; rc_status
killproc -USR2 ${klog_bin} ; rc_status -v
;;
status)
echo -n "Checking for service syslog:"
checkproc ${klog_bin} ; rc_status
checkproc -p ${syslog_pid} ${syslog_use} ; rc_status -v
;;
probe)
test ${config} -nt ${syslog_pid} && echo reload
;;
*)
echo "Usage: $0 {start|stop|status|try-restart|restart|force-reload|reload|probe}"
exit 1
;;
esac
rc_exit