实现一个系统服务脚本
1、在 /etc/init.d 目录下新建文件 tomcat(服务文件名字)
2、更改文件为可执行的 chmod +x tomcat
3、编辑文件 vim tomcat
1、作为服务脚本必须实现的内容
对于service调取脚本可以传递给脚本的参数应该包含:
–start
–stop
–restart
–status
也就是 系统服务脚本 要有 service tomcat start | service tomcat stop … 差不多这样
2、服务脚本 必须实现的内容:
chkconfig: 123456 20 79
description: This is a Tomcat Server shell scripts
3、系统还有一个通用的工具脚本,其中包含了一些方便我们服务脚本开发的函数
在 系统服务脚本里 导入该脚本 . /etc/rc.d/init.d/functions
4、/etc/rc.d/init.d/functions脚本介绍:
functions这个脚本是给/etc/init.d里边的文件使用的,提供了一些基础的功能
重要函数:
checkpid:检查是否已存在pid,如果有一个存在,返回0(通过查看/proc目录) checkpid $pid
daemon:启动某个服务。/etc/init.d目录部分脚本的start使用到这个
killproc:杀死某个进程。/etc/init.d目录部分脚本的stop使用到这个
status:返回一个服务的状态
我们可以在自己的脚本中通过source或.的方式导入
5、通过检查程序进程来判断 程序是否运行
想要检查程序进程 就要通过启动的时候 返回一个 pid
存放在一个.lock文件里 然后通过读取此文件来判断是否有该进程存在
1、tomcat有自己的服务管理脚本
2、在系统服务脚本中判断服务进程状态
3、最直接的方式是用进程的PID
4、对tomcat的脚本进行一些手术:
5、观察:bin/startup.sh
发现最终调用catalina.sh脚本
并传参start
所以查找catalina.sh
查找到这行:
elif [ “
!”