ubuntu twemproxy 服务编写

1. 编写服务脚本

#! /bin/sh
### BEGIN INIT INFO
# Provides:          twemproxyredis
# Required-Start:    $all
# Required-Stop:
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: start twemproxyredis
### END INIT INFO
prog="nutcracker"
count=`ps -ef|grep ${prog} | grep -v grep|wc -l`;
pids=`ps -ef | grep ${prog} | grep -v grep | awk ‘{print $2}‘`
start() {
   while :
do
local_host="`hostname --fqdn`"
local_ip=`host $local_host 2>/dev/null | awk ‘{print $NF}‘`
index=`expr index "$local_ip" NX`
length=`expr ${index} - 4`
newip=${local_ip:0:${length}}
 if [ "${newip}" == "192.168.13.128" ]
    then
     break;
     else
     sleep 1s
   fi
done

   if [ $count -eq 0 ]; then
   echo "${prog} start"
   cd /usr/local/twemproxy/sbin
   nutcracker -d -c /usr/local/twemproxy/sbin/conf/nutcracker.yml -p /usr/local/twemproxy/run/nutcracker.pid -o /usr/local/twemproxy/run/nutcracker.log
   fi

}

stop() {
    if [ $count != 0 ]; then
    echo "${prog} stop"
    for skill in $pids; do
        kill -9 ${skill}
    done
    fi
}

case "$1" in
    start)
        start
        exit 0
    ;;
    stop)
        stop
        exit 0
    ;;
    reload|restart|force-reload)
        stop
        start
        exit 0
    ;;
    **)
        echo "Usage: $0 {start|stop|reload}" 1>&2
        exit 1
    ;;
esac

2 我上面编写脚本未 bin/bash 脚本,而默认ubuntu 执行的是bin/dash 下的。这里需要执行命令进行切换到/bin/bash

sudo dpkg-reconfigure dash

3 把服务添加到开机启动中

sudo update-rc.d twemproxy defaults 90 10

4 移除开机启动命令

sudo update-rc.d -f twemproxy remove

5 开启服务,并设置开机启动

service twemprxoy start
systemctl enable twemproxy

  

原文地址:https://www.cnblogs.com/dzpblogs/p/12110920.html

时间: 2024-11-09 00:32:50

ubuntu twemproxy 服务编写的相关文章

qtday01 ubuntu 下手动编写第一个qt程序

//qt 5.2.1 //1t目录下 //1t.cpp /* 第一个qt程序 */ #include <QApplication> #include<QtWidgets/QLabel> #include<QString> #include<QTextCodec> int main(int argc,char** argv){ /*构造一个对象*/ QApplication app(argc,argv); QTextCodec* coder=QTextCode

在ubuntu linux 中编写一个自己的python脚本

在ubuntu linux 中编写一个自己的简单的bash脚本. 实现功能:终端中输入简单的命令(以pmpy为例(play music python),为了区别之前说的bash脚本添加了py后缀),来实现音乐的播放.注:本人ununut中安装了audacious,所以就以audacious为例,来实现音乐的播放. 第一步:进入一个目录,最好是自己特别选定的,如果用文件浏览器可以新建一个名为pmpy空白文档文件:如果是用终端可以输入命令:vi pmpy(可能会因为位置问题,需要添加sudo) 第二

ubuntu FTP服务安装

//安装vsftp apt-get install vsftpd -y //增加账号 //1 查找 nologin位置 /usr/sbin/nologin useradd -d /alidata/www/wwwroot -s /sbin/nologin pwftp //2 设定密码 passwd pwftp //修改配置文件 vi /etc/vsftpd.conf //修改 anonymous_enable=NO //开启 local_enable=YES write_enable=YES ch

C#(VS2008)服务编写-安装和部署

1.创建一个空白解决方案. 2.在解决方案下面添加两个Windows服务:WXSmsGuardNew(保护服务),WXSmsMainNew(主服务). 3.第一个服务作为保护服务,服务上添加两个控件:System.Timers.Timer和System.ServiceProcess.ServiceController 由于System.Timers.Timer不会显示在工具栏中无法直接拖到服务中,故而我们找到服务设计器页面WXSmsGuardNew.Designer.cs,将手动构造System

Ubuntu:系统启动服务

系统启动服务 针对Ubuntu 5级别服务的说明 安装sysv-rc-conf sudo apt-get install sysv-rc-conf acpi-support 高级电源管理支持 acpid acpi 守护程序.这两个用于电源管理,非常重要 alsa 声音子系统 alsa-utils anacron cron 的子系统,将系统关闭期间的计划任务,在下一次系统运行时执行. apmd acpi 的扩展 atd 类似于 cron 的任务调度系统.建议关闭 binfmt-support 核心

Windows服务编写原理(转发)

有那么一类应用程序,是能够为各种用户(包括本地用户和远程用户)所用的,拥有用户授权级进行管理的能力,并且不论用户是否物理的与正在运行该应用程序的计算机相连都能正常执行,这就是所谓的服务了. (一)服务的基础知识 Question 1. 什么是服务?它的特征是什么? 在NT/2000中,服务是一类受到操作系统优待的程序.一个服务首先是一个Win32可执行程序,如果要写一个功能完备且强大的服务,需要熟悉动态连接库(Dlls).结构异常处理.内存映射文件.虚拟内存.设备I/O.线程及其同步.Unico

Ubuntu ssh服务安装

在使用xshell连接ubuntu虚拟机时,提示 Could not connect to '192.168.0.106' (port 22): Connection failed. 在主机使用ping命令,是可以与该虚拟机ping通的.问题在于ubuntu需要开启ssh服务才能使用xshell进行远程连接. 1.使用命令ps -e|grep ssh来查看是否开启了ssh服务 2.如果没有则使用apt-get安装 安装ssh-client命令:sudo apt-get install opens

第1课第4.4节_Android硬件访问服务编写HAL代码

4 编写HAL代码 源码下载方法 第一次: git clone https://github.com/weidongshan/SYS_0001_LEDDemo.git 更新: git pull origin 取出指定版本: git checkout v1 // 有JNI没有HAL git checkout v2 // 有JNI,HAL git checkout v3 // add MODULE TAG, DEVICE TAG JNI 向上提供本地函数, 向下加载HAL文件并调用HAL的函数HAL

ubuntu设置服务开机启动

在Ubuntu下用sysv-rc-conf命令,它是chkconfig的替代命令,而使用方法与chkconfig基本相同. 安装: sudo apt-get install sysv-rc-conf 配置nginx开机启动 sudo sysv-rc-conf nginx on 检查nginx在各运行级别下是否为开机启动 sysv-rc-conf --list nginx 一般在2~5运行级别下为开机启动就行了