——在一台RHEL5服务器中通过源码编译安装了zebra软件(见第3章实验),用于提供软路由服务。为了更方便对zebra服务进行启动、终止等管理操作,需要编写简单的zebrad服务启动脚本
需求描述
为已安装的zebra程序编写 zebrad 服务控制脚本
启动服务:/etc/init.d/zebrad start
终止服务:/etc/init.d/zebrad start
重启服务:/etc/init.d/zebrad restart
查看服务状态:/etc/init.d/zebrad status
未正确指定“start”、“stop”、“restart”、“status”参数时,输出用法帮助信息后退出
在启动、终止服务时应显示相关提示信息
将zebrad添加为系统服务
实现思路
参考已有的系统脚本建立 zebrad 脚本文件
将启动、终止zebra程序等执行操作分别定义为函数
通过“/usr/local/sbin/zebra -d”命令启动zebra服务
结合“/var/run/zebra.pid”文件中的PID号终止zebra进程
通过判断“zebra -d”进程信息确定zebra服务状态
设置case分支语句
读取执行脚本时提供的未知参数“$1”,并进行比较
若为“start”、“stop”等字串,分别调用对应函数
否则执行默认操作,显示用法帮助信息并退出
执行“chkconfig --add zebrad”添加为系统服务
注意:
脚本文件开头要保留用于chkconfig配置的内容,例如:
#! /bin/bash
# chkconfig: 2345 99 60
# description: Start/Stop the zebra router daemon.
转载于:https://blog.51cto.com/jiayf/333253