ubuntu自定义服务模板
根据他人代码修改:
#!/bin/sh
### BEGIN INIT INFO
# Provides: <pragram name>
# Required-Start: $local_fs $network $named $time $syslog
# Required-Stop: $local_fs $network $named $time $syslog
# Default-Start:
# Default-Stop:
# Description: shrpx proxy
### END INIT INFO PROG= #<pragram name>
PIDFILE= #<pid file full path>
LOGFILE= #<log file full path> start() {
if [ -f $PIDFILE ]; then
if ! pgrep $PROG; then
echo "Terminate abnormaly last time!"
rm -f $PIDFILE
else
echo 'Service already running' >&
return
fi
fi if [ -n "$PIDFILE" ];then
PIDFILE="&1"
fi echo 'Starting service...' if $PROG >$LOGFILE; then
echo 'Service started'
else
echo 'Start failed!' >&
fi
} stop() {
if [ ! -f "$PIDFILE" ]; then
echo 'Service not running' >&
return
fi
echo 'Stopping service…' >&
kill -KILL $(cat "$PIDFILE")
rm -f "$PIDFILE"
echo 'Service stopped' >&
} status(){
if [ -f "$PIDFILE" ];then
echo "$PROG is running"
else
echo "$PROG is stopped"
fi
} uninstall() {
echo "Are you really sure you want to uninstall this service?"\
"That cannot be undone. [yes|No] "
local SURE
read SURE
if [ X"$SURE" = "Xyes" ]; then
stop
if [ -f $PIDFILE ]; then
rm -f "$PIDFILE"
fi
echo "Notice: log file is not be removed: '$LOGFILE'" >&
update-rc.d -f $PROG remove
rm -fv "$0"
fi
} case "$1" in
start)
start
;;
stop)
stop
;;
uninstall)
uninstall
;;
retart)
stop
start
;;
status)
status
;;
*)
echo "Usage: $0 {start|stop|status|restart|uninstall}"
esac
使用方法:cp到/etc/init.d/下面,修改<>里面的内容,然后使用update-rc.d管理服务;
添加一个服务:sudo update-rc.d srv_name defaults
删除一个服务 :sudo update-rc.d–f srv_name remove
default表示的是服务的运行优先级,默认是20,数字越小优先级越高。
以后就会开机自启动了,使用sudo service srv_name start|stop|status|restart|uninstall来做临时性的管理。
ubuntu自定义服务模板的更多相关文章
- Ubuntu自定义服务
1.准备脚本 准备好一个bash服务脚本,包括start|stop|restart等参数,将脚本文件命名为“服务名”,拷贝到/etc/init.d/目录下. 2.添加服务sudo update-rc. ...
- Ubuntu下使用Sysvinit实现自定义服务(简单研究)
通过上一篇文章http://www.cnblogs.com/EasonJim/p/7168216.html可以大概了解到Sysvinit的历史. 其实在自定义服务上,使用Sysvinit是最简单的,本 ...
- 用Visual Studio2019自定义项目模板
项目模板简介 众所周知,在我们使用VS新建项目时,都需要选择一个项目模板,如下图: 我们选择完项目模板进行创建,创建完成之后,可以发现项目中已经包含了一些基础的文件.例如MVC: 可以看到,MVC项目 ...
- VS2019 自定义项目模板
前言: 使用"宇宙最强IDE"开发项目时,都需要根据不同情况选择一个项目模板,来满足开发需求:如下 VS为我们提供了基础的项目模板,但现有项目模板未包含基础功能如:日志输出.审计日 ...
- .NET Core - 自定义项目模板
前言: 前面介绍 自定义项目模板 中介绍了一种简单的方式--通过创建项目导出为项目模板方式实现.本次将采用dotenet cil(手脚架)来创建项目模板. 那么,我们首先看下当前dotnet 支持的项 ...
- JS组件系列——BootstrapTable+KnockoutJS实现增删改查解决方案(四):自定义T4模板快速生成页面
前言:上篇介绍了下ko增删改查的封装,确实节省了大量的js代码.博主是一个喜欢偷懒的人,总觉得这些基础的增删改查效果能不能通过一个什么工具直接生成页面效果,啥代码都不用写了,那该多爽.于是研究了下T4 ...
- VS自定义项目模板:[2]创建VSIX项目模板扩展
VS自定义项目模板:[2]创建VSIX项目模板扩展 听语音 | 浏览:1237 | 更新:2015-01-02 09:21 | 标签:软件开发 1 2 3 4 5 6 7 分步阅读 一键约师傅 百度师 ...
- angularjs 自定义服务的三种方式
angularjs 中可通过三种($provider,$factory,$service)方式自定义服务,以下是不同的实现形式: // 定义module , module中注入$providevar ...
- angularJs自定义服务(实现签名和加密)
写在前面: angularJS是google公司主推的js开发优秀框架... 页面展示: 在应用中进行加密是普遍存在的,个人建议在前端实现加密签名(前端加密是否必要来自知乎:http://www.zh ...
随机推荐
- lubuntu安装maven
原文转自:jobar.iteye.com/blog/1776747 1 apt-cache search maven 获取所有可用的maven包 2 sudo apt-get install mave ...
- SEH and C++ Exceptions,自定义CSeException
Description of CSeException CSeException class is based on CException class provided by MFC. I overw ...
- Qt无边框MainWindow如何拖动四周改变大小
原来还有winEvent(), x11Event() and macEvent() 这些东西...不过貌似还需要找更好的办法,否则就无法跨平台了. 你需要重新处理部分窗体事件,以下代码适用于Windo ...
- 解决crystal report水晶报表在浏览器提示bobj未定义的错误
网上的中文文章(比如这篇文章)都是写的部署到服务器后出现的问题,同时也指出要把crystal report的aspnet_client文件夹拷贝到对应项目的根目录里,这样就可以正常显示了,但是具体到我 ...
- linux svn服务器搭建、客户端操作、备份与恢复
Subversion(SVN)是一个开源的版本控制系統,管理着随时间改变的数据.这些数据放置在一个中央资料档案库中,这个档案库很像一个普通的文件服务器,它会记住每一次文件的变动,这样就可以把档案恢复到 ...
- BZOJ3210: 花神的浇花集会
3210: 花神的浇花集会 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 238 Solved: 119[Submit][Status] Descri ...
- SharePoint 2010中使用Visual Studio 2010进行方便快速的Web Part开发
转:http://www.cnblogs.com/fatwhale/archive/2010/02/24/1672633.html 在Visual Studio 2010中, 已经集成了用于Shar ...
- Maven学习:常用mvn命令
转自:http://blog.csdn.net/lfsfxy9/article/details/12200915 Maven 在线: <span style="font-family: ...
- Flex编译探索:FLEXSDK自带编译器与MAVEN插件Flex-mojos
最近为了持续集成,想将flex的编译形成自动化.所以做了一些探索,虽然最后放弃了,但也有一些认识,写出来可以少走一些弯路. Flex的编译都是基于mxmlc编译机制 flex-mojos也是基于mxm ...
- JSP控制select不可再选择
首先分析下disable ,display和readonly: 1,Readonly只针对input(text / password)和textarea有效,而disabled对于所有的表单元素都有效 ...