Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2075570
  • 博文数量: 354
  • 博客积分: 4955
  • 博客等级: 上校
  • 技术积分: 4579
  • 用 户 组: 普通用户
  • 注册时间: 2009-07-21 11:46
文章分类

全部博文(354)

文章存档

2015年(1)

2013年(4)

2012年(86)

2011年(115)

2010年(67)

2009年(81)

我的朋友

分类: LINUX

2011-08-01 15:23:57

一个linux启动脚本,redhat和centos通用

#!/bin/bash

# 依Shell 脚本的编码规范书写脚本说明

# yum This shell script enables the yum-updates daemon

#

# Author: Jeremy Katz

#

# chkconfig: 345 97 03

#

# description: This is a daemon which periodically checks for updates \

# and can send notifications via mail, dbus or syslog.

# processname: yum-updatesd

# config: /etc/yum/yum-updatesd.conf

# pidfile: /var/run/yum-updatesd.pid

#

# 在当前 Shell 中运行函数库文件 /etc/rc.d/init.d/functions

. /etc/rc.d/init.d/functions
# 设置脚本返回值变量

RETVAL=0
# 定义 start 函数

start() {
echo -n $"Starting yum-updatesd: "
# 用 /etc/rc.d/init.d/functions 中的函数 daemon 调用守护进程 yum-updatesd

daemon yum-updatesd
# 将函数 daemon 的返回值赋予变量 RETVAL

RETVAL=$?
echo
# 如果函数 daemon 执行成功,生成锁定文件 /var/lock/subsys/yum-updatesd

[ $RETVAL -eq 0 ] && touch /var/lock/subsys/yum-updatesd
}
# 定义 stop 函数

stop() {
echo -n $"Stopping yum-updatesd: "
# 用 /etc/rc.d/init.d/functions 中的函数 killproc 杀死守护进程 yum-updatesd

killproc yum-updatesd
echo
# 如果函数 killproc 执行成功,删除锁定文件 /var/lock/subsys/yum-updatesd

[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/yum-updatesd
}
# 定义 restart 函数

restart() {
stop
start
}
# 根据调用本脚本的第一个位置参数的值执行不同的操作

case "$1" in
start)
start
;;
stop)
stop
;;
restart|force-reload|reload)
restart
;;
condrestart)
# 若服务已经启动(锁定文件 /var/lock/subsys/yum-updatesd存在)则重新启动

[ -f /var/lock/subsys/yum-updatesd ] && restart
;;
status)
# 用 /etc/rc.d/init.d/functions 中的函数 status 查看守护进程 yum-updatesd 的状态

status yum-updatesd
# 将函数 status 的返回值赋予变量 RETVAL

RETVAL=$?
;;
*)
# 对于$1的其他值显示用法

echo $"Usage: $0 {start|stop|status|restart|reload|force-reload|condrestart}"
# 退出本脚本,并以 1 为该脚本的返回值

exit 1
esac
# 退出本脚本,并以变量 RETVAL 的值为该脚本的返回值

exit $RETVAL



脚本开关的这两行:

# chkconfig: 345 97 03
#
# description: This is a daemon which periodically checks for updates \

这两行是chkconfig配置服务的关键

其中:chkconfig里面的345代表在第3 4 5运行级别启动这个服务  97代表启动优先级 03代表关闭优先级

description是描述信息.


阅读(637) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~