原文链接:https://www.cnblogs.com/zydev/p/6888805.html
1. zabbix客户端的系统服务脚本
1.1 拷贝启动脚本
zabbix的源码提供了系统服务脚本,在/usr/local/src/zabbix-3.2.6/misc/init.d目录下,我的系统是CentOS的,所以选择fedora下的脚本复制到/etc/init.d下
1
2
3
4
|
[root@lanmp core5] # pwd /usr/local/src/zabbix-3 .2.6 /misc/init .d /fedora/core5 [root@lanmp core5] # cp -a zabbix_agentd /etc/init.d/ |
这里需要添加一个软链接,否则会报错退出
1
|
ln -s /usr/local/zabbix-3 .2.6 /sbin/zabbix_agentd /usr/local/sbin/ |
1.2 添加到开机自启动
1
2
3
4
|
[root@lanmp init.d] # chkconfig --add zabbix_agentd [root@lanmp init.d] # chkconfig zabbix_agentd on [root@lanmp init.d] # chkconfig --list|grep zabbix_agentd zabbix_agentd 0:off 1:off 2:on 3:on 4:on 5:on 6:off |
脚本内容
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
#!/bin/bash # # /etc/rc.d/init.d/zabbix_agentd # # Starts the zabbix_agentd daemon # # chkconfig: - 95 5 # description: Zabbix Monitoring Agent # processname: zabbix_agentd # pidfile: /tmp/zabbix_agentd.pid # Modified for Zabbix 2.0.0 # May 2012, Zabbix SIA # Source function library. . /etc/init .d /functions RETVAL=0 prog= "Zabbix Agent" ZABBIX_BIN= "/usr/local/sbin/zabbix_agentd" if [ ! -x ${ZABBIX_BIN} ] ; then echo -n "${ZABBIX_BIN} not installed! " # Tell the user this has skipped exit 5 fi start() { echo -n $ "Starting $prog: " daemon $ZABBIX_BIN RETVAL=$? [ $RETVAL - eq 0 ] && touch /var/lock/subsys/zabbix_agentd echo } stop() { echo -n $ "Stopping $prog: " killproc $ZABBIX_BIN RETVAL=$? [ $RETVAL - eq 0 ] && rm -f /var/lock/subsys/zabbix_agentd echo } case "$1" in start) start ;; stop) stop ;; reload|restart) stop sleep 10 start RETVAL=$? ;; condrestart) if [ -f /var/lock/subsys/zabbix_agentd ]; then stop start fi ;; status) status $ZABBIX_BIN RETVAL=$? ;; *) echo $ "Usage: $0 {condrestart|start|stop|restart|reload|status}" exit 1 esac exit $RETVAL |
2.2 服务端的系统服务脚本
同样的方法,这里就不演示了
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
#!/bin/bash # # /etc/rc.d/init.d/zabbix_server # # Starts the zabbix_server daemon # # chkconfig: - 95 5 # description: Zabbix Monitoring Server # processname: zabbix_server # pidfile: /tmp/zabbix_server.pid # Modified for Zabbix 2.0.0 # May 2012, Zabbix SIA # Source function library. . /etc/init .d /functions RETVAL=0 prog= "Zabbix Server" ZABBIX_BIN= "/usr/local/sbin/zabbix_server" if [ ! -x ${ZABBIX_BIN} ] ; then echo -n "${ZABBIX_BIN} not installed! " # Tell the user this has skipped exit 5 fi start() { echo -n $ "Starting $prog: " daemon $ZABBIX_BIN RETVAL=$? [ $RETVAL - eq 0 ] && touch /var/lock/subsys/zabbix_server echo } stop() { echo -n $ "Stopping $prog: " killproc $ZABBIX_BIN RETVAL=$? [ $RETVAL - eq 0 ] && rm -f /var/lock/subsys/zabbix_server echo } case "$1" in start) start ;; stop) stop ;; reload|restart) stop sleep 10 start RETVAL=$? ;; condrestart) if [ -f /var/lock/subsys/zabbix_server ]; then stop start fi ;; status) status $ZABBIX_BIN RETVAL=$? ;; *) echo $ "Usage: $0 {condrestart|start|stop|restart|reload|status}" exit 1 esac exit $RETVAL |