linux服务器的启停,控制Linux下 mono 服务的启动停止

当Window下的服务部署到Linux的时候,我们一般用Mono.service 来启动停止。参数比较多,不太好用。于是有个这个Shell脚本。

用法:moa s1 start #启动

moa s1 stop # 停止

要求有如下的目录结构:

/opt/basepath/

s1/

sample1.exe #服务1,文件名称不限

s2/

sampleservice2.exe #服务2 ,文件名称不限

daemon.d/  #空目录,放置进程标识

moa  #Shell脚本

#!/bin/bash

#

# monosd  执行Mono.Service 启动停止 .net 服务,根据目录名.

# 例如:目录结构如下时候, monosd s1 start/stop

# /opt/basedir/

# /opt/basedir/s1

# /opt/basedir/s1/xxxxx.exe

#

#

# chkconfig: - 50 50

# description: start or stop mono service by pathname

# config: /etc/sysconfig/netconsole

#

# Copyright 2015 Qtong, Inc.

#

# Based in part on a shell script by

# evlon 2015-11-02

MONOPATH=/opt/mono/bin

SHNAME=$0

SERVICENAME=$1

#BASEPATH=/opt/${SHNAME##*/}

#BASEPATH=${SHNAME%/*}

BASEPATH=$(cd `dirname $0`; pwd)

DAEMONPATH=$BASEPATH/daemon.d

PATH=$MONOPATH:$PATH

RETVAL=0

EXEFILE=`find $BASEPATH/$SERVICENAME/ -name *.exe`

EXEFILE=${EXEFILE##*/}

usage ()

{

echo $"Usage: $0 servicePathName {start|stop}" 1>&2

RETVAL=2

}

start ()

{

if [ ! -d $DAEMONPATH ]; then

echo $"目录不存在 $DAEMONPATH" 1>&2

exit 3

fi

if [ ! -d "$BASEPATH/$SERVICENAME" ]; then

echo $"目录不存在 $BASEPATH/$SERVICENAME" 1>&2

exit 4

fi

if  [ "$EXEFILE" == "" ]; then

echo $"找不到可执行文件!目录: $BASEPATH/$SERVICENAME/" 1>&2

exit 5

fi

mono-service -d:$BASEPATH/${SERVICENAME} -l:$DAEMONPATH/${SERVICENAME}d $EXEFILE

sleep 3

if [ ! -f  $DAEMONPATH/${SERVICENAME}d ]; then

echo "PID:"`cat $DAEMONPATH/${SERVICENAME}d` "Started"  1>&2

fi

}

stop ()

{

if [ ! -d $BASEPATH/$SERVICENAME ]; then

echo $"目录不存在 $BASEPATH/$SERVICENAME" 1>&2

exit 3

fi

if [ ! -f  $DAEMONPATH/${SERVICENAME}d ]; then

echo $"服务没有运行 $BASEPATH/$SERVICENAME" 1>&2

exit 5

fi

PID=`cat $DAEMONPATH/${SERVICENAME}d`

kill `cat $DAEMONPATH/${SERVICENAME}d`

echo "PID: $PID Stoped"  1>&2

}

restart ()

{

stop

start

}

case "$2" in

stop) stop ;;

start) start;;

restart|reload|force-reload) restart ;;

*) usage ;;

esac

exit $RETVAL

下面关于Mono与Jexus的文章您也可能喜欢,不妨看看:

在Linux(Ubuntu/openSUSE/CentOS)下配置ASP.NET(Apache + Mono) http://www.linuxidc.com/Linux/2013-07/87599.htm

0b1331709591d260c1c78e86d0c51c18.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值