Windows 服务移植到Mono

如何进行移植请参考这篇文章:
http://www.cnblogs.com/sjhrun2001/archive/2009/03/10/1408264.html

系统:CentOS7.0

移植过程中遇到的问题

执行service myserver start 的时候提示“没有权限”

处理方式:

chmod a+wrx /etc/init.d/myserver

执行“ln –s /etc/rc.d/init.d/sjhServer S97sjhServer”报异常目录不存在

处理方式:

ln –s  /etc/rc.d/init.d/sjhServer S97sjhServer

说明:-s 后面多加一个空格

See mono-service version command

grep exec `type -p mono-service` | head -n 1
exec /usr/bin/mono $MONO_OPTIONS /usr/lib/mono/4.5/mono-service.exe $args

Source Page Orgin SourceCode

#!/bin/bash
#
#  DREQPService  :  service for example
#
#  chkconfig: 2345 97 92
#  description: for test.
#  processname: DREQPService
#
. /etc/rc.d/init.d/functions

SERVICE_NAME=DREQPServer
SERVICE_PATH=/usr/myfoder/camtest/service
SERVICE_ASSEMBLY=${SERVICE_PATH}/DREQPService.exe
SERVICE_LCK=/var/run/${SERVICE_NAME}.pid

start() {
     echo -n $"Starting $SERVICE_NAME:"
     daemon mono-service2 -l:$SERVICE_LCK $SERVICE_ASSEMBLY
     RETVAL=$?
     echo
     [ $RETVAL -eq 0 ] && touch /var/lock/subsys/$SERVICE_NAME    
     return $RETVAL;
}

stop () {
     echo -n $"Shutting down Mono Service $SERVICE_NAME:" 
         test -f $SERVICE_LCK && kill `cat $SERVICE_LCK`

     RETVAL=$?
     if [ $RETVAL -eq 0 ]; then        
         echo "Success stop";
     else        
         echo "Error stop";
     fi;
}

status() {
         echo -n "Checking for Mono Service $SERVICE_NAME:"
         test -f $SERVICE_LCK
     RETVAL=$?    
     return $RETVAL;
}

pause() {
         echo "Pausing Mono Service $SERVICE_NAME:"
         test -f $SERVICE_LCK && kill -USR1 `cat $SERVICE_LCK`
         RETVAL=$?    
     return $RETVAL;
}

 cd $SERVICE_PATH
 case "$1" in
     start) 
         start;
         RETVAL=$?;
         ;;
     stop)
         stop;
         RETVAL=$?;
         ;;
        pause)
             pause;
             RETVAL=$?
             ;;    
     condrestart)        
           stop;
           start;
           RETVAL=$?;        
         ;;
     restart|reload)
         stop;
         start;
         RETVAL=$?;
         ;;
     status)
         status;
         RETVAL=$?;
         ;;
     *)
         echo $"$SERVICE_NAME: Usage: < start | stop | pause | restart | reload | status >"
         ;;
esac;
exit $RETVAL;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

星火燎猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值