linux daemon工具,Linux使用daemontools

功能:

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

1、安装

yum install csh

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进程)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值