文档章节

Linux下service简介以及封装service

聼到
 聼到
发布于 2015/11/05 10:31
字数 622
阅读 39
收藏 0

     service命令,顾名思义,就是用于管理Linux操作系统中服务的命令。首先要说明的是,这个命令不是在所有的的linux发行版里面都有,一般主要在redhat、fedora、mandriva和centos中有。通过file命令可以知道这个命令是一个脚本文件,位于/sbin目录下面,

它主要的工作原理是去/etc/init.d/目录下面寻找对应的服务脚本执行,调用方式如service tomcat start/stop/restart。

因此,在工作环境中不建议大家使用service命令,而换成/etc/init.d/XX.sh这种方式,原因是上面所说,service命令不是所有的发行版都有。

      介绍了service这个命令之后,接下来要介绍把自己的脚本封装成service服务的例子,也是本篇博客的重心,主要是为了说明service这个脚本的运行原理,希望大家可以自己去了解一下。

      1.准备自己的shell脚本myservice.sh,内容如下:

#!/bin/bash
#chkconfig:2345 80 90
#description:myservice
command=$1
case $command in
start)
        echo myservice start...
        ;;
stop)
        echo myservice stop...
        ;;
restart)
        echo myservice restart...
        ;;
*)
        echo input command error...
esac

    2.给这个脚本加上可执行权限,chmod +x myservice.sh。同时将这个脚本放在/etc/init.d/目录下,mv xx/myservice.sh /etc/init.d/。

     3.给这个脚本封装服务,chkconfig --add myservice.sh 。这里要注意的是刚开始一直运行这个命令出错,这个脚本中要注意的是第二行和第三行,chkconfig后面的2345 80 90 的意思是说明在/etc/rc2~rc5目录下创建一个S80myservice的链接,文件是链接到/etc/init.d/myservice脚本同时添加一个start参数,S是指在系统启动的时候就会执行这个脚本,表明服务已启动。同时会在rc0和rc6下面建立K90myservice的连接同时会添加一个stop参数,K代表系统关闭的时候会关闭这个服务。description后面是服务的描述。这两行是必须要写明的,不然会报错。

      4.执行这个服务,我的运行结果如下:

[root@localhost init.d]# service myservice start

myservice start...

[root@localhost init.d]# service myservice stop

myservice stop...

[root@localhost init.d]# service myservice restart

myservice restart...

    当然,在实际工作中,大家可以把对应的脚本替换到可以执行的位置。谢谢

© 著作权归作者所有

共有 人打赏支持
聼到
粉丝 0
博文 5
码字总数 3050
作品 0
浦东
私信 提问
ACWS Framework 简介

- ACWS Framework 是为开发ACWS结构的应用程序和实现Web Service功能,为方便此类应用开发而设计的一套基础的分布式运算构架。 ACWS Framework是一套吸收C/S结构和B/S结构的基础上作出的,全...

agilelab
2006/11/21
0
0
10分钟带你了解k8s基础(kubernetes基础概念总结)

kubernetes基础概念总结 简介 是由google主导开发的开源容器管理平台,提供多主机集群,容器编排,容器伸缩等功能 基础组件介绍 docker 容器运行环境的一种实现,封装底层容器 etcd 是集群用...

CountingStars_
08/12
0
0
Ubuntu10.04.4 Server下基于LVS DR模式+Keepalived的负载均衡高可用

Ubuntu10.04.4 Server下基于LVS DR模式+Keepalived的负载均衡高可用集群 LVS+Keepalived 介绍 2 LVS 2 Keepalvied 2 ubuntu系统环境准备工作 2 更换Ubuntu软件源 2 架构拓扑图 2 服务安装 ...

bobo2cj
2014/02/28
0
0
WebService的简介, 原理, 使用

第一部分 : 直观概述 WebService 的几种概念 : 以 HTTP 协议为基础,通过 XML 进行客户端和服务器端通信的框架 / 组件 两个关键点 : 1. 服务端提供的功能 , 通过 xml 描述 2. 第一步中的描述...

晨曦之光
2012/03/09
4K
0
Microsoft宣布正式发布Linux on ASE

Microsoft宣布正式发布(GA)用于ASE(应用服务环境,App Service Environment)的Linux。该服务使客户可结合使用Linux上的应用服务(App Service)特性与ASE。在正式发布版之前,Microsoft...

程序师
08/23
0
0

没有更多内容

加载失败,请刷新页面

加载更多

如何解决 homebrew 更新慢的问题

之前一直困扰于 Homebrew 的更新速度,曾试过修改更新源(清华、中科大等)的方式,但是并没什么卵用;也试过设置 curl 代理的方式,但是 brew 走的好像不是 curl 的方式,所以也没用。 通过...

whoru
14分钟前
0
0
TiDB EcoSystem Tools 原理解读系列(二)TiDB-Lightning Toolset 介绍

简介 TiDB-Lightning Toolset 是一套快速全量导入 SQL dump 文件到 TiDB 集群的工具集,自 2.1.0 版本起随 TiDB 发布,速度可达到传统执行 SQL 导入方式的至少 3 倍、大约每小时 100 GB,适合...

TiDB
16分钟前
0
0
【Visual Studio 扩展工具】如何在ComponentOneFlexGrid树中显示RadioButton

概述 在ComponentOne Enterprise .NET控件集中,FlexGrid表格控件是用户使用频率最高的控件之一。它是一个功能强大的数据管理工具,轻盈且灵动,以分层的形式展示数据(数据呈现更加直观)。...

葡萄城技术团队
18分钟前
0
0
Maven环境隔离

Maven环境隔离 1. 什么是Maven环境隔离 顾名思义,Maven环境隔离就是将开发中的环境与beat环境、生产环境分隔开,方便进行开发和维护。这个在实际项目中用的还是很多的,如果你的项目用的Mav...

蚂蚁-Declan
18分钟前
1
0
day182-2018-12-19-英语流利阅读-待学习

“性感”时代已去,维密将如何转身? Daniel 2018-12-19 1.今日导读 维多利亚的秘密(Victoria's Secret)这个内衣品牌,最近似乎步入了“中年危机”——曾经打遍天下的“性感”内衣,在主打...

飞鱼说编程
19分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部