#!/bin/bash
wget -P /expect_zabbix/ http://10.107.2.44/zabbix_agent/check.sh
. /expect_zabbix/check.sh
groupadd zabbix
/usr/sbin/useradd -g zabbix -s /sbin/nologin zabbix
pkill ntp && ntpdate 10.107.2.44
wget -P /expect_zabbix http://10.107.2.44/zabbix_agent/zabbix-2.2.2.tar.gz
tar xf /expect_zabbix/zabbix-2.2.2.tar.gz -C / && cd /zabbix-2.2.2
./configure --prefix=/usr/local/zabbix --sysconfdir=/etc/zabbix --enable-agent
make && make install
echo "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
[ ! -d /etc/zabbix ] && mkdir /etc/zabbix && echo "create zabbix folder OK"
[ ! -f /etc/zabbix/zabbix_agentd.conf ] && cp /zabbix-2.2.2/conf/zabbix_agentd.conf /etc/zabbix/
/sbin/ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:" | grep "10." >/ip.txt && echo "create ip.txt OK..."
sed -i 's/^Server=127.0.0.1/Server=10.140.86.236/g' /etc/zabbix/zabbix_agentd.conf && echo "Server OK.."
sed -in "s#^Hostname=Zabbix server#Hostname=$(cat /ip.txt)#g" /etc/zabbix/zabbix_agentd.conf && echo "Hostname OK..."
sed -i 's/^ServerActive=127.0.0.1/ServerActive=10.140.86.236:10051/g' /etc/zabbix/zabbix_agentd.conf && echo "ServerActive OK..."
##start option
[ ! -f /etc/init.d/zabbix_agentd ] && cp /zabbix-2.2.2/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/zabbix_agentd && echo "cp zabbix_agentd OK..."
sed -i "s:BASEDIR=/usr/local:BASEDIR=/usr/local/zabbix:g" /etc/rc.d/init.d/zabbix_agentd
chmod +x /etc/rc.d/init.d/zabbix_agentd
chkconfig --add zabbix_agentd
chkconfig zabbix_agentd on
pkill zabbix_agentd
/usr/local/zabbix/sbin/zabbix_agentd start || /usr/local/zabbix/sbin/zabbix_agentd -c /etc/zabbix/zabbix_agent.conf
ps -aux | grep zabbix_agentd >> /$(cat /ip.txt).log
netstat -an | grep 10050 >> /$(cat /ip.txt).log
cat /etc/services | grep "zabbix*" &>/dev/null || echo "zabbix_agent 10050/tcp" >> /etc/services
cat /etc/services | grep "zabbix*" &>/dev/null || echo "zabbix_agent 10050/udp" >> /etc/services
service iptables stop || systemctl stop iptables.service
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 10050 -j ACCEPT
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 10051 -j ACCEPT
service zabbix_agentd restart || /usr/local/zabbix/sbin/zabbix_agentd -c /etc/zabbix/zabbix_agent.conf
cat /$(cat /ip.txt).log
rm -rf /root/zabbix_install.sh
rm -rf /expect_zabbix
rm -rf /ip.txt
rm -rf /yumupdate.sh

zabbix_agentd安装脚本共享的更多相关文章

  1. 一个比较完整的Inno Setup 安装脚本(转)

    一个比较完整的Inno Setup 安装脚本,增加了对ini文件设置的功能,一个安装包常用的功能都具备了. [Setup] ; 注: AppId的值为单独标识该应用程序. ; 不要为其他安装程序使用相 ...

  2. 一个比较完整的Inno Setup 安装脚本

    一个比较完整的Inno Setup 安装脚本,增加了对ini文件设置的功能,一个安装包常用的功能都具备了. [Setup] ; 注: AppId的值为单独标识该应用程序. ; 不要为其他安装程序使用相 ...

  3. L2TP/IPSec一键安装脚本

    本脚本适用环境:系统支持:CentOS6+,Debian7+,Ubuntu12+内存要求:≥128M更新日期:2017 年 05 月 28 日 关于本脚本:名词解释如下L2TP(Layer 2 Tun ...

  4. mysql 自动备份和nginx自动安装脚本

    一.自动备份Mysql脚本: 如下脚本为mysql自动备份脚本,仅供参考,可以根据实际情况修改. #!/bin/sh #auto backup mysql #wugk #Define PATH定义变量 ...

  5. Linux安装脚本需要交互之如何实现自动安装

    Linux中shell脚本运行时经常需要进行交互,比如安装软件的过程中对license声明的确认,需要输入yes,回车之类的确认信息.这个在自动化安装的时候就会是个问题. 通常对于这个问题比较灵活的解 ...

  6. iredmail安装脚本分析(一)---iRedmail.sh

    iredmail是一套以postfix为核心的整合邮件系统的安装脚本,可以达到快速部署邮件服务器的目的.为了让自己不遗忘shell的语法,所以闲来无事,学习一下他的代码. 我从官网下载他的最新版,解压 ...

  7. CentOS 6、7下pptp vpn一键安装脚本

    之前有折腾过<CentOS 6.7下IPSEC/L2TP VPN一键安装脚本>,不稳定.不支持IOS,因此换成pptp,并已经添加到<lnmp一键安装包>.这个脚本可以单独使用 ...

  8. 17.KVM安装之虚拟磁盘,安装脚本

    1.创建磁盘 vm.list 指定虚拟磁盘名称和主机名 create_vm.sh    #创建vm.list中的虚拟磁盘,并指定大小100G #!/bin/bash VM_DIR="/opt ...

  9. windows 服务安装脚本拾遗

    转自:http://blog.csdn.net/susubuhui/article/details/7881096 1.安装脚本 echo 请按任意键开始安装客户管理平台的后台服务 echo. pau ...

随机推荐

  1. Matrix的一些知识

    1.什么是ColorMatrix ColorMatrix是一个颜色矩阵,它定义了一个 4*5 的float[]类型的矩阵 颜色矩阵,而图像的 RGBA 值则存储在一个5*1的颜色分量矩阵C中 所以为了 ...

  2. SQL递归

    递归一般出现在树形结构中 1:根据孩子节点查找所有父节点 With T As ( Select * From U_Companies TB Where CompanyID=80047 Union Al ...

  3. SVD++:推荐系统的基于矩阵分解的协同过滤算法的提高

    1.背景知识 在讲SVD++之前,我还是想先回到基于物品相似的协同过滤算法.这个算法基本思想是找出一个用户有过正反馈的物品的相似的物品来给其作为推荐.其公式为:

  4. Java遍历JSON

    JSONObject jsonObject = new JSONObject(s);然后用Iterator迭代器遍历取值,建议用反射机制解析到封装好的对象中 JSONObject jsonObject ...

  5. 使用CocoaPods配置工程

    1.首先搭建环境,配置CocoaPods,具体请参考 http://code4app.com/article/cocoapods-install-usage 2.打开终端,输入 cd 空格 把工程拖入 ...

  6. LINUX内核分析第七周学习总结:可执行程序的装载

    LINUX内核分析第七周学习总结:可执行程序的装载 韩玉琪 + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/cours ...

  7. C++中四种转换类型的区别

    一.四种转换类型比较: 类型转换有c风格的,当然还有c++风格的.c风格的转换的格式很简单(TYPE)EXPRESSION,但是c风格的类型转换有不少的缺点,有的时候用c风格的转换是不合适的,因为它可 ...

  8. XML Xpath学习

    Xpath是一门在xml文档中查找信息的语言. Xpath可用来在xml文档中对元素和属性进行遍历. <1>路径表达式1: 斜杠(/)作为路径内部的分隔符 同一个路径有绝对路径和相对路径两 ...

  9. java 查询 mongodb 中的objectid

    网上找了很久查询objectid的方法都是错的,用mongovue能查询出来,但就是用java不知道怎么查询 1.mongovue里的查询方式: {"_id" : ObjectId ...

  10. vim global命令

    global命令格式 : [range]global/{pattern}/{command} global命令在[range]指定的文本范围内(缺省为整个文件)查找{pattern},然后对匹配到的行 ...