Loading
0

Linux中将某启动脚本添加为service服务启动方法

技术小学生微信公众号
腾讯云服务器大促销。
华为服务器
前言:有时自己写了一个脚本需要使用service xxx start的方式来启动,或者安装了某程序比如tomcat,安装后每次重启服务都要到对应目录执行脚本,很不方便,这时候我们可以考虑自己写一个service start方式的启动。方法很简单,可参考如下
1、我的启动脚本是放在 /home/www/crontb.sh 目录的,请更换成自己的信息。crontb.sh脚本中写入的是crontb启动脚本。(crontb是有自己的启动脚本,我只是为了写这个脚本自己测试一下)
2、在/etc/init.d/目录下创建一个启动文件,比如  crontb_start,在该文件中写入如下shell脚本,并将该脚本权限设置为755
本脚本还有很多地方有优化的地方,可根据自己情况做调整.
设置后可使用如下命令启动、停止、重启、查看状态
service crontb_start stop
service crontb_start start
service crontb_start restart
service crontb_start status
 

#!/bin/bash
#这是一个范例,主要用于将某启动脚本添加为sevice服务启动,可将教程中的路径及服务名更换为自己的信息即可.
#有很多可以优化的地方,这是一个简单雏形可以根据自己情况调整

# 我的网站 blog.tag.gg 欢迎访问啊啊

#1.Start启动模块
start(){
    echo "crontab服务启动中..."
    cd /home/www/
    chmod 755 ./crontb.sh
    ./crontb.sh
    echo "crontab服务启动成功/started successful"
}

#2.Stop停止模块
stop(){
    pid=`ps -ef|grep "chronyd"|grep -v "grep"|awk '{print $2}'`
    if [ "$pid" == "" ];then
        echo "抱歉,未找到进程,可能服务未启动!/No crontb pid alive!"
    else
        echo "正在Kill Pid $pid..."
        kill $pid
        kill $pid
        echo "chronyd 停止成功/stopped successful"
    fi
}

#3.Status状态查询模块
status(){
    pid=`ps -ef | grep "chronyd" | grep -v "grep" | awk '{print $2}'`
    if [ "$pid" == "" ];then
        echo "chronyd 是停止状态/chronyd is stopped"
    else
        echo "chronyd 是运行状态/chronyd is running"
    fi
}

#4.Restart重启模块
restart(){
    stop
    start

}

#5.也可以将上述shell代码改变为如下方式。

case "$1" in
  start)
     start
     ;;
  stop)
     stop
  ;;
  status)
     status
  ;;
  restart)
     restart
  ;;
  *)
     echo $"Usage: $0 {start|stop|status|restart}"
     exit 1
esac

#我的网站  blog.tag.gg  欢迎访问
#脚本完结,脚本还有很多修改的地方,比如将服务名从变量中提取等.

 

 





 
技术小学生微信公众号
华为服务器
腾讯云服务器大促销。

声明:站长码字很辛苦啊,转载时请保留本声明及附带文章链接:https://blog.tag.gg/showinfo-3-35943-0.html
亲爱的:若该文章解决了您的问题,可否收藏+评论+分享呢?
上一篇:宝塔中使用Laravel程序 .env 配置不生效的解决方法putenv函数被禁
下一篇:linux下scp命令上传文件及下载文件方法