系统启动脚本分析(5)--syslog脚本

王朝other·作者佚名  2008-05-19
宽屏版  字体: |||超大  

摘要

这段时间在搞一个微型的Linux,将它作为一个项目的平台,这个过程中,看了研究了一下Linux的启动过程,同时把启动配置文件看了一下,作了一下注释,同时和大家共享一下:)。我使用的Linux平台是Red Hat Linux 7.3

#!/bin/bash

#

# syslog Starts syslogd/klogd.

#

#

# chkconfig: 2345 12 88

# description: Syslog is the facility by which many daemons use to log

# messages to various system log files. It is a good idea to always

# run syslog.

### BEGIN INIT INFO

# Provides: $syslog

### END INIT INFO

# Source function library.

. /etc/init.d/functions

[ -f /sbin/syslogd ]' 'exit 0

[ -f /sbin/klogd ]' 'exit 0

##首先判断syslogd和klogd这两个文件是否存在,如果存在才能执行下面的脚本

# Source config

if [ -f /etc/sysconfig/syslog ] ; then

. /etc/sysconfig/syslog

##导入syslog这个配置文件

else

SYSLOGD_OPTIONS="-m 0"

KLOGD_OPTIONS="-2"

fi

RETVAL=0

umask 077

start() {

echo -n $"Starting system logger: "

daemon syslogd $SYSLOGD_OPTIONS

##syslogd是系统运行监测程序,在系统产生错误时,这个daemon负责把错误信息写到固定的地方

##daemon这个函数在functions这个文件中定义

RETVAL=$?

##RETVAL设置为启动syslogd这个daemon是否成功的返回值

echo

echo -n $"Starting kernel logger: "

daemon klogd $KLOGD_OPTIONS

##klogd是内核运行监测程序,当内核出错时,这个daemon负责把错误信息通知用户

echo

[ $RETVAL -eq 0 ] && touch /var/lock/subsys/syslog

##如果syslogd启动成功,则在/var/lock/subsys/下面建立一个空文件syslog

return $RETVAL

}

stop() {

echo -n $"Shutting down kernel logger: "

killproc klogd

##killproc是在functions这个文件中定义的函数

echo

echo -n $"Shutting down system logger: "

killproc syslogd

RETVAL=$?

echo

[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/syslog

return $RETVAL

}

rhstatus() {

status syslogd

status klogd

}

restart() {

stop

start

}

case "$1" in

start)

start

;;

stop)

stop

;;

status)

rhstatus

;;

restart|reload)

restart

;;

condrestart)

[ -f /var/lock/subsys/syslog ] && restart' ':

;;

*)

echo $"Usage: $0 {start|stop|status|restart|condrestart}"

exit 1

esac

exit $?

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有