此Daemontools并非windows下的Daemontools。该工具负责将你的进程在后台以daemon方式运行的。如果你的应用不小心被杀掉之后,自己就会起来。也就是会让你的程序变成杀不死的小强。 比如数据收集,监控等程序都需要不间断的运行。
Daemontools
安装方法:
- 下载,解压daemontools-0.76.tar.gz
- 进入 admin/daemontools-0.76
- 将
admin/daemontools-0.76/src/error.h
中的extern int errno
;替换为#include <errno.h>
不然可能会报如下错误/usr/bin/ld: errno: TLS defini tion in /lib/libc.so.6 section .tbss mismatches non-TLS reference in envdir.o
- 编译安装 执行
package/install
实例:
通过supervise启动tomcat
创建
run
脚本,脚本名字必须为run
1
2
3mkdir -p /opt/app/tomcat-daemon
cd /opt/app/tomcat-daemon
vim runrun
脚本中输入如下内容
1 |
|
- 修改脚本权限
chmod +x run
- 以后台方式启动
nohup supervise tomcat-daemon/ > /opt/app/tomcat9/logs/catalina.out &
注意: supervisor只能监控前台程序, 如果程序是通过fork方式实现的daemon服务,则不能用它监控.catalina.sh run
方式跟start
启动方式不一样,start
是以后台方式启动。
expect
安装
这个工具是用来部署脚本完成自动SCP方式传输文件用的,文章最后会附上我写的一个小demo。
先安装tcl
1.下载,解压tcl
,进入unix
目录
2.编译安装1
2
3./configure
make
make install
安装expect
1.下载,解压expect
2.编译安装1
2
3
4./configure --with-tclinclude=/usr/src/tcl8.6.2/generic/
--with-tclconfig=/usr/local/lib/
make
make install
注意: 执行第一条指令时请确认 "/usr/src/tcl8.6.2/generic/"
这个路径是否存在,如果不存在请替换相应的路径
安装完后,执行 expect
如果出现 expect1.1>
说明安装成功。
实例
1 | scp_cmd=`which scp` |