Linux shell 自启动脚本写法

直接上脚本内容

#!/bin/bash

#chkconfig: 2345 80 90

#description:sniffer
#第一行,告诉系统使用的shell,所以的shell脚本都是这样。
#第二行,chkconfig后面有三个参数2345,80和90告诉chkconfig程序,需要在rc2.d~rc5.d目录下,创建名字为 S80sniffer的文件连接,连接到/etc/rc.d/init.d目录下的的sniffer脚本。第一个字符是S,系统在启动的时候,运行脚本asniffer,就会添加一个start参数,告诉脚本,现在是启动模式。同时在rc0.d和rc6.d目录下,创建名字为K90sniffer的文件连接,第一个字符为K,系统在关闭系统的时候,会运行sniffer,添加一个stop,告诉脚本,现在是关闭模式。
#注意上面的三行中,第二,第三行是必须的,否则在运行chkconfig --add auto_run时,会报错。

# 当系统开始启动的时候,运行的函数
start() {
	echo "Start sniffer"
	/usr/local/mysql-sniffer/bin/mysql-sniffer -d -i eth0 -p 3306 -l /home/logs/mysql/ -s 1440 -e /home/logs/mysql/sniffer_stderr
	echo "OK"
}
# 当系统开始停止的时候,运行的函数
stop() {
	echo "Stop sniffer"
	kill -9 `ps -ef|grep mysql-sniffer|grep -v grep|awk '{print $2}'`
	echo "OK"
}
# 当系统开始重启的时候,运行的函数 
restart() {
	stop
	start
}
# 这里可以认为是对上面三个函数进行分支调用
case "$1" in 
  start)
    start  # 调用start函数
    ;;
  stop)
    stop   # 调用stop函数
    ;;
  restart)
    restart  # 调用restart函数
    ;;
  *)
    echo "Usage:$0 {start|stop|restart}"
    exit 1
esac

  

猜你喜欢

转载自www.cnblogs.com/xzlive/p/9057829.html