功能:

在使用memcached时候,怕因为一些不可预知的因素导致memcached进程死掉,而又不能及时的发现重启,可以通过daemontools来管理memcached的启动,当memcached死掉后系统会自动在5秒内重memcached;

1、安装

yum install csh

http://cr.yp.to/daemontools/daemontools-0.76.tar.gz下载

yum install gcc tcsh # gcc, csh 要求
wget http://cr.yp.to/daemontools/daemontools-0.76.tar.gz
tar -zxf daemontools-0.76.tar.gz
mv daemontools-0.76 /var/lib/ # 非常重要, 安装完成后不能删除: /var/lib/daemontools-0.76
chown root:root -R /var/lib/daemontools-0.76
chmod 755 /var/lib/daemontools-0.76
cd /var/lib/daemontools-0.76/ # 必须进入此目录才能编译
./package/install
sed -i '$acsh -cf \x27\/command\/svscanboot &\x27' /etc/rc.d/rc.local

最后一句命令是在 ‘/etc/rc.d/rc.local’ 文件上加上了一句:

csh -cf '/command/svscanboot &'

启用:

sh /etc/rc.local

systemctl start rc-local

检查服务是否启动:

ps -ef|grep svscanboot
root 13716 1 0 04:44 pts/1 00:00:00 /bin/sh /command/svscanboot

  

使机器重启后生效:

chmod +x /etc/rc.d/rc.local                              # 必须有,否则重启不能启动 svscanboot 服务

  

如果你的glibc库比较新,此时你很可能会遇到下面错误:
/usr/bin/ld: errno:
TLS definition in /lib/libc.so.6 section .tbss mismatches non-TLS reference in envdir.o
/lib/libc.so.6: could not read symbols: Bad value
collect2: ld returned 1 exit status
make: *** [envdir] Error 1
Copying commands into ./command...
cp: cannot stat `compile/svscan': No such file or directory

为了解决这个问题,接着上面的安装步骤继续:

cd src
wget http://www.qmail.org/moni.csi.hu/pub/glibc-2.3.1/daemontools-0.76.errno.patch
patch < daemontools-0.76.errno.patch
cd ..
package/install

  

通过ps -ef | grep svscan 来确认安装是否成功

该版本已经把脚本自动加到系统启动脚本里
/etc/inittab
开机会自动启动

2、配置

在/service下建立memcached目录

在/service/memcached新建名为run的启动脚本,如下

#!/bin/sh
exec 2>&1
exec /usr/local/bin/memcached -u root -m 30

启动服务:

svc -du /service/memcached(重启memcached进程)
 svc -u /service/memcached(启动memcached进程)
 svc -d /service/memcached(停止memcached进程)

Linux使用daemontools的更多相关文章

  1. Linux 驱动开发

    linux驱动开发总结(一) 基础性总结 1, linux驱动一般分为3大类: * 字符设备 * 块设备 * 网络设备 2, 开发环境构建: * 交叉工具链构建 * NFS和tftp服务器安装 3, ...

  2. Daemontools和Supervisor管理linux常驻进程

    linux主要使用supervise来管理常驻进程.基于supervise的两个比较重要的工具是Daemontools和Supervisor. 实际上,supervise也算Daemontools的一 ...

  3. linux 进程监控

    linux 进程监控 supervise Supervise是daemontools的一个工具,可以用来监控管理unix下的应用程序运行情况,在应用程序出现异常时,supervise可以重新启动指定程 ...

  4. Linux中的守护进程——supervise

    絮叨 supervise是daemontools的一个工具,可以用来监控管理Unix下的应用程序运行情况,在应用程序出现异常时,supervise可以重新启动指定程序. 本文介绍一下supervise ...

  5. 系统管理员都要知道的 30 个 Linux 系统监控工具

    1. top - 进程活动监控命令 top 命令会显示 Linux 的进程.它提供了一个运行中系统的实时动态视图,即实际的进程活动.默认情况下,它显示在服务器上运行的 CPU 占用率最高的任务,并且每 ...

  6. Linux系统常用工具集

    整理Linux系统下一些日常工作中常用工具,旨在提高效率: 1.截图软件Shutter 2.通讯聊天工具pidgin 3.守护进程工具daemontools 4.远程桌面服务TigerVNC 5.Ma ...

  7. 2017.7.21 Linux中ELK服务后台运行方式

    通过 2017.7.18 linux下ELK环境搭建 搭建好服务于之后,一旦按下Ctrl+C或者退出登录会话,服务的进程就随之停止了.要长期在后台运行此程序,有几种方式: 1 nohup 输入Ctrl ...

  8. linux init->upstart->systemd

    http://en.wikipedia.org/wiki/Init init From Wikipedia, the free encyclopedia     This article is abo ...

  9. Linux操作系统的文件查找工具locate和find命令常用参数介绍

    Linux操作系统的文件查找工具locate和find命令常用参数介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.非实时查找(数据库查找)locate工具  locate命 ...

随机推荐

  1. 关于javascript中的深拷贝问题

    一直在尝试为javascript找一个快捷可靠的对象深拷贝的方法,昨天突发奇想,把对象push到一个空数组里,然后对改数组通过concat()或slice()进行拷贝,然后取出数组的第一个元素复制给变 ...

  2. spring-boot-quartz, 依赖spring-boot-parent good

    /** * state的值代表该任务触发器的状态: STATE_BLOCKED 4 // 运行 STATE_COMPLETE 2 //完成那一刻,不过一般不用这个判断Job状态 STATE_ERROR ...

  3. 配置文件——App.config文件读取和修改

    作为普通的xml文件读取的话,首先就要知道怎么寻找文件的路径.我们知道一般配置文件就在跟可执行exe文件在同一目录下,且仅仅在名称后面添加了一个.config 因此,可以用Application.Ex ...

  4. C++一个简单的手柄类模板

    #ifndef HANDLE_H #define HANDLE_H #include "Animal.h" template <typename T> class Ha ...

  5. EM 12c: OMS Failed to start After restarting the Repository Database or reboot of the server

    原文地址:http://blog.csdn.net/wanghui5767260/article/details/39398449 更全面,更专业 EM 12c: OMS Failed to star ...

  6. Clojure实现的简单短网址服务(Compojure、Ring、Korma库演示样例)

    用clojure写了一个简单的短网址服务(一半抄自<Clojure 编程>).在那基础上增加了数据库,来持久化数据. 功能 用Get方法缩短一个网址: 然后在短网址列表就能够查看了, 接下 ...

  7. 使用WPF将图片转变为灰度并加上水印并保存为文件

    原文:使用WPF将图片转变为灰度并加上水印并保存为文件 运行效果: (上图中左下角为原图的缩小显示,By:Johnson为TextBlock)保存的结果图片:上图的"Test Words.& ...

  8. ddraw 视频下绘图 不闪烁的方法

    我们假设是在在RGB视频上绘图(直线,矩形等),一般採用双缓冲区继续,使用内存MemoryDC,来实现画的图形在视频上显示不闪烁的功能,可是我们知道用RGB显示视频都是使用GDI进行渲染,这样非常耗C ...

  9. 创建可按比例调整的布局的 Windows 窗体

    能够正确调整大小的窗体可以提高您的用户界面的易用性. 此演练演示了如何创建当用户调整窗体大小时按比例调整的布局. 您将使用 TableLayoutPanel 控件实现一个接收联系人信息的数据输入窗体. ...

  10. JS 实现Map

    function Map() { this.arr = new Array(); var struct = function(key, value) { this.key = key; this.va ...