自动安装zabbix-agentd脚本 自己写的
zabbix_agent_install.sh
#!/bin/bash
#auther by wangxp ZABBIX_AGENT_DIR="/usr/local/zabbix"
ZABBIX_AGENT_FILE_NAME="zabbix_agent-5.0.15-linux-3.0-amd64-static.tar.gz"
SERVER_IP=111.111.110.41
#LOG_FILE= echo "检查安装文件..."
sleep 1
if test -f "$ZABBIX_AGENT_FILE_NAME"
then
echo "当前目录找到安装文件:$ZABBIX_AGENT_FILE_NAME"
else
ls `pwd`
echo "当前目录找不到:$ZABBIX_AGENT_FILE_NAME ,脚本退出"
exit 1
fi echo "检查安装目录..."
sleep 1
if test -d $ZABBIX_AGENT_DIR
then
echo "存在安装路径:$ZABBIX_AGENT_DIR"
rm -rf $ZABBIX_AGENT_DIR/*
echo "清理$ZABBIX_AGENT_DIR"
else
echo "创建安装路径:$ZABBIX_AGENT_DIR"
mkdir -pv $ZABBIX_AGENT_DIR
fi echo "创建zabbix用户..."
sleep 1
grep "zabbix" /etc/passwd
if [ $? -ne 0 ];
then
useradd zabbix -s /sbin/nologin
fi
#检测函数
check(){
if [ $? -ne 0 ];
then
echo "Error,Please check again."
exit 1
fi
}
zabbixsign(){
if test -z "`ss -ntlp|grep zabbix_agentd|grep -v grep`"
then
echo "zabbix_agentd服务启动失败"
sign=0
else
echo "zabbix_agentd服务启动成功"
sign=1
fi
} echo "开始解压缩文件..."
sleep 1
tar -zxvf $ZABBIX_AGENT_FILE_NAME -C $ZABBIX_AGENT_DIR
check echo “创建软链接”
sleep 1
if test -L '/usr/bin/zabbix_sender'
then
rm -rf /usr/bin/zabbix_sender
echo "删除已有/usr/bin/zabbix_sender"
fi
if test -L '/usr/bin/zabbix_get'
then
rm -rf /usr/bin/zabbix_get
echo "删除已有/usr/bin/zabbix_get"
fi
if test -L '/usr/sbin/zabbix_agentd'
then
rm -rf /usr/sbin/zabbix_agentd
echo "删除已有/usr/sbin/zabbix_agentd"
fi ln -s `find $ZABBIX_AGENT_DIR -type f -name zabbix_sender` /usr/bin
echo "创建软连接/usr/bin/zabbix_sender"
check
ln -s `find $ZABBIX_AGENT_DIR -type f -name zabbix_get` /usr/bin
echo "创建软连接/usr/bin/zabbix_get"
check
ln -s `find $ZABBIX_AGENT_DIR -type f -name zabbix_agentd` /usr/sbin
echo "创建软连接/usr/sbin/zabbix_agentd"
check echo "修改zabbix_agent配置..."
sleep 1
sed -r -i s/^Server=127.0.0.1/Server=$SERVER_IP/g `find $ZABBIX_AGENT_DIR -type f -name zabbix_agentd.conf`
check
sed -r -i s/^ServerActive=127.0.0.1/ServerActive=$SERVER_IP/g `find $ZABBIX_AGENT_DIR -type f -name zabbix_agentd.conf`
check
sed -r -i s/'^Hostname=Zabbix server'/Hostname=`hostname`/g `find $ZABBIX_AGENT_DIR -type f -name zabbix_agentd.conf`
check echo -e "zabbix_agent基本配置:"
cat `find $ZABBIX_AGENT_DIR -name zabbix_agentd.conf` | egrep '^Server|^ServerActive|^Hostname' echo -e "添加zabbix_agent启停脚本。。。"
sleep 1
if test ! -f zabbix_agent.sh
then
echo -e "#!/bin/bash\n# chkconfig: 2345 22 78\n# description:\n
ZABBIX_AGENT_DIR=$ZABBIX_AGENT_DIR
ZABBIX_AGENT=`find $ZABBIX_AGENT_DIR -type f -name zabbix_agentd`
ZABBIX_AGENT_CONF=`find $ZABBIX_AGENT_DIR -type f -name zabbix_agentd.conf`" > zabbix_agentd.sh
echo '
function stop(){
kill -15 `cat /tmp/zabbix_agentd.pid`
}
case $1 in
start)
$ZABBIX_AGENT -c $ZABBIX_AGENT_CONF
;;
stop)
stop
;;
restart)
stop
$ZABBIX_AGENT -c $ZABBIX_AGENT_CONF
;;
*)
echo "Usage:service zabbix_agentd start|stop|restart"
;;
esac'>>zabbix_agentd.sh
chmod u+x zabbix_agentd.sh
else
echo "当前目录已经存在zabbix_agent.sh脚本。"
fi if test -f /etc/init.d/zabbix-agentd;
then
rm -rf /usr/local/etc/zabbix_agentd.conf
echo "删除已存在/etc/init.d/zabbix-agentd"
fi
echo "zabbix_agent添加到init进程..."
sleep 1
cp zabbix_agentd.sh /etc/init.d
check
mv /etc/init.d/zabbix_agentd.sh /etc/init.d/zabbix-agentd
chmod a+x /etc/init.d/zabbix-agentd echo "zabbix_agent开机启动设置"
chkconfig --add zabbix-agentd
chkconfig zabbix-agentd on
service zabbix-agentd start
sleep 1
zabbixsign if [ $sign -eq 0 ];then
echo "尝试用root启动用户"
sleep 1
sed -r -i /'# AllowRoot=0'/a\AllowRoot=1 `find $ZABBIX_AGENT_DIR -type f -name zabbix_agentd.conf`
echo -e "zabbix_agent基本配置:"
cat `find $ZABBIX_AGENT_DIR -name zabbix_agentd.conf` | egrep '^Server|^ServerActive|^Hostname|^AllowRoot'
sleep 3
service zabbix-agentd start
fi
sleep 1
zabbixsign
自动安装zabbix-agentd脚本 自己写的的更多相关文章
- mysql5.7 在Centeros 6 下自动安装的shell脚本
概述: 此脚本实现了在Centeros 6版本下自动安装mysql5.7到目录 /opt/mysql-5.7*并且做软连接映射到 /usr/local/mysql,自动修改root密码为:123456 ...
- 自己用ansible加shell 写的自动安装kubernetes的脚本
脚本地址:https://github.com/shatianxiaozi/auto_install_k8s.git 1. 下载 git clone https://github.com/shatia ...
- ansible 批量安装zabbix agentd客户端
目录结构 # tree /etc/ansible/ /etc/ansible/ ├── ansible.cfg ├── hosts ├── roles │ └── zabbix-agentd │ ...
- (二)centos7安装zabbix agentd端
关闭防火墙和selinux systemctl stop firewalld systemctl disable firewalld sed -ri '/^SELINUX=/cSELINUX=disa ...
- 自动安装L2tp的脚本
来自于 https://teddysun.com/448.html #!/usr/bin/env bash PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/ ...
- python3自动安装脚本,python3.x与python2.x共存
1.前言: python3过程中,通过搜索一些文章参考安装过程发现比较麻烦,而且还出现一些不可预期的报错.python3环境需要升级openssl,所以为了部署到其他环境更方便,写自动安装脚本方式,且 ...
- 实用脚本----Linux下Jdk和Tomcat自动安装shell脚本总结
系统环境为:ubuntu 14.04 一.JDK 自动安装脚本 jdk自动安装bash shell脚本,截止今天(2014/10/15)亲测可用: sudo su #切换到root权限 mkdir / ...
- Zabbix Server 和 Zabbix Agentd 开机自动运行
Zabbix Server 和 Zabbix Agentd 开机自动运行 请问:怎样 Zabbix Server 和 Zabbix Agentd 开机自动运行? 注:如果你的命令行写进了 /etc/r ...
- hadoop自动安装的脚本与步骤
最近要在10几台机器上安装hadoop.对于这种繁复而重复的工作,一步步的打命令行,对于程序员来说是一件不能忍的事情.所以我就琢磨着怎么写一个脚本来自动安装hadoop. 任务: 在10几台机器上中的 ...
- 可以自动安装mysql数据库的一个shell脚本
发布:thatboy 来源:脚本学堂 [大 中 小] 分享一例shell脚本,可以实现mysql数据库的自动安装,脚本写的不错,无论是用来学习,还是生产环境中应用,都是不错的,有需要的朋友 ...
随机推荐
- golang之常用第三方包汇总
汇总golang日常开发中常用的库包 [web] gin: github.com/gin-gonic/gin [MySQL] gorm: [Redis] go-redis: github.com/ ...
- ZCMU-1038
其实感觉不太难,读懂题意就行,我一开始没有仔细去读感觉就很懵.其题目意思就是一段字符串含有数字和'<'或者'>',一开始从左开始遍历,遇到'>'这类东西换方向,如果有多次遇到就删之前 ...
- 常用js 函数
过滤对象空值 removeEmptyValues(obj) { for (const key in obj) { ...
- 关于 Span 的一切:探索新的 .NET 明星: 3.什么是 Memory<T>,以及为什么你需要它?
3. 什么是 Memory<T>,以及为什么你需要它? 1. Span<T> 是什么? 2. Span<T> 是如何实现的? 3. 什么是 Memory<T& ...
- [AI回答]Java中Long和long的区别,为什么在Springboot项目中一般使用Long
Long 和 long 的区别 在Java中,Long 和 long 是两个不同的概念,它们分别代表不同的数据类型: long: 这是一个 基本数据类型 (primitive type). 它用于存储 ...
- 【Javaweb】【答卷】萌狼蓝天大二上学期期末Javaweb考试复习卷(一)
- HTMLreport报告(五) -- 测试报告中添加截图
一.需求痛点 HTMLreport报告没有截图 二.实现办法 1.思路:使用viewer.js图片查看器,用cdn:后端部分用 unittest.test_result中的内容 2.实现步骤 1)vi ...
- maven:Could not transfer artifact from/to maven-default-http-blocker (http://0.0.0.0/): Blocked m...
今天在拉完项目后拉取包的过程中,maven报错: Could not transfer artifact from/to 对应的包 maven-default-http-blocker (http:/ ...
- 祝大家这周圣诞快乐!!本周进军多模态!😀From LLMs to MLLMs:😜Exploring the Landscape of Multimodal Jailbreaking
从LLMs到MLLMs:探索多模态越狱攻击的前景 禁止盗用,侵权必究!!!欢迎大家积极举报 ①脆弱性代表:越狱攻击(恶意指令/训练&解码干预). ②最近的越狱攻击: 整体说:构建越来越复杂场景 ...
- java通过apache poi框架读取2007版Excel文件
java系读写excel文件既可以用jxl库,也可以用POI库,但是,jxl库只支持低版本的excel2003,不支持更高版本,无法直接输出*.xlsx文件,只能输出*.xls文件,另外,更新也不频繁 ...