同一文件夹下建立pwd.txt,格式如下:

ip username password

ip username password

#!/bin/bash
cat pwd.txt | while read line
do
hostip=`echo $line | cut -d" " -f1`
uname=`echo $line | cut -d" " -f2`
pwd=`echo $line | cut -d" " -f3` /usr/bin/expect <<-EOF
set timeout 600
spawn scp -r /tmp/zabbix-3.4.12.tar.gz $uname@$hostip:/tmp/
expect {
 "*yes/no" { send "yes\r"; exp_continue }
"*password:" { send "$pwd\r" }
}
spawn scp -r /tmp/3.sh $uname@$hostip:/tmp/
 expect {
 "*yes/no" { send "yes\r"; exp_continue }
"*password:" { send "$pwd\r" }
}
spawn ssh $uname@$hostip
 expect {
 "*yes/no" { send "yes\r"; exp_continue }
"*password:" { send "$pwd\r" }
}
expect "*]#"
send "chmod +x /tmp/3.sh\r"
expect "*]#"
send "sh /tmp/3.sh\r"
expect "*]#"
send "exit\r"
interact
expect eof
EOF done

3.sh

#!/bin/bash
yum -y install pcre*
egrep "^zabbix" /etc/group >& /dev/null
if [ $? -ne 0 ]
then
    groupadd zabbix
fi
egrep "^zabbix" /etc/passwd >& /dev/null
if [ $? -ne 0 ]
then
    useradd -g zabbix zabbix -s /sbin/nologin
fi
cd /tmp/
tar -zxvf /tmp/zabbix-3.4.12.tar.gz
cd /tmp/zabbix-3.4.12/
./configure --prefix=/usr/local/zabbix-agent --enable-agent
make
make install
cd /tmp/zabbix-3.4.12/misc
cp init.d/tru64/zabbix_agentd /etc/init.d/
chmod +x /etc/init.d/zabbix_agentd
cp -r /etc/init.d/zabbix_agentd /tmp/zabbix_agentd.bak
sed -i 's/DAEMON=\/usr\/local\/sbin\/zabbix_agentd/DAEMON=\/usr\/local\/zabbix-agent\/sbin\/zabbix_agentd/g' /etc/init.d/zabbix_agentd
sed -i '/#!\/bin\/sh/a\#chkconfig: 345 95 95' /etc/init.d/zabbix_agentd
sed -i '/#chkconfig: 345 95 95/a\#description: Zabbix_Server' /etc/init.d/zabbix_agentd
chkconfig zabbix_agentd on
sed -i 's/Server=127.0.0.1/Server=193.168.120.77/g' /usr/local/zabbix-agent/etc/zabbix_agentd.conf
sed -i 's/ServerActive=127.0.0.1/ServerActive=193.168.120.77/g' /usr/local/zabbix-agent/etc/zabbix_agentd.conf
HOSTNAME=`hostname`
sed -i 's/Hostname=Zabbix server/Hostname='$HOSTNAME'/g' /usr/local/zabbix-agent/etc/zabbix_agentd.conf
sed -i 's/LogFile=\/tmp\/zabbix_agentd.log/LogFile=\/var\/log\/zabbix\/zabbix_agentd.log/g' /usr/local/zabbix-agent/etc/zabbix_agentd.conf
mkdir -p /var/log/zabbix
chown -R zabbix.zabbix /var/log/zabbix/
chown -R zabbix.zabbix /usr/local/zabbix-agent/ /etc/init.d/zabbix_agentd start

Linux记录-批量安装zabbix(转载)的更多相关文章

  1. Linux记录-批量安装LNMP(转载)

    #!/bin/bash # Describe: This is a one - button installation service script # 提示:使用此脚本时,尽量先选择第一项配置Yum ...

  2. Linux记录-批量安装ssh(转载)

    首先,需要检查expect是否安装:rpm -qa|grep expect 然后,在操作机上创建公钥:ssh-keygen 一路回车即可 创建好之后到/root/.ssh/下就可以看到id开头的2个文 ...

  3. Linux记录-批量安装软件服务(转载)

    #!/bin/bash # 安装函数 install(){    for soft in $*    do         echo "$soft"安装中...         y ...

  4. Zabbix 4.0.2试用(七):在Linux主机中安装zabbix agent并添加该主机(yum源安装)

    Zabbix 4.0.2试用(七):在Linux主机中安装zabbix agent并添加主机(yum源安装) 2018年12月20日, 上午6:42 之前介绍的是下载源安装包,编译安装的方式来安装ag ...

  5. Redis进阶实践之一VMWare Pro虚拟机安装和Linux系统的安装(转载)(1)

    Redis进阶实践之一VMWare Pro虚拟机安装和Linux系统的安装 一.引言 设计模式写完了,相当于重新学了一遍,每次学习都会有不同的感受,对设计模式的理解又加深了,理解的更加透彻了.还差一篇 ...

  6. ansible 批量安装zabbix agentd客户端

    目录结构 # tree /etc/ansible/ /etc/ansible/ ├── ansible.cfg ├── hosts ├── roles │   └── zabbix-agentd │  ...

  7. Linux记录-salt-minion安装

    python -m SimpleHTTPServer 8888#!/bin/bash sed -i 's/^#//g' /etc/yum.repos.d/centos7.4.repo sed -i ' ...

  8. Linux记录-AWK语法(转载)

    1.原理 awk,一个行文本处理工具,逐行处理文件中的数据 语法:awk 'pattern + {action}' 说明:(1)单引号''是为了和shell命令区分开:(2)大括号{}表示一个命令分组 ...

  9. Linux记录-批量更改当前目录的文件后缀名

    #!/bin/bash path=. for file in $(ls $path) do if [ -f $file ] then filename=${file%.*} bak=${file#*. ...

随机推荐

  1. 评估预测函数(3)---Model selection(选择多项式的次数) and Train/validation/test sets

    假设我们现在想要知道what degree of polynomial to fit to a data set 或者 应该选择什么features 或者 如何选择regularization par ...

  2. 【测试用例工具】TestLinked的使用实例(转)

    转自:https://blog.csdn.net/ikoqzurydr/article/details/81630510

  3. 关闭win10 任务栏窗口预览的步骤:

    win10虽好,但是总有不利于使用的反人类设计,好在可以设置,这也是比较好了的, 作为开发人员,经常会开好几个窗口,但是win10的预览很不好,设计的就是娱乐用途一般,因此必须是把他关了 一下步骤亲自 ...

  4. 题解 UVa11889

    题目大意 \(T\) 组数据,每组数据给定两个正整数 \(A,C\),求使 \(LCM(A,B)=C\) 的最小的 \(B\),若无解则输出NO SOLUTION. 分析 当 \(C\%A=0\) 时 ...

  5. es 启动问题

    max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536] vim / ...

  6. mysql优化后的主配置文件

    #!/bin/bash basedir=$mysql datadir=$mysql/data server_id=$(hostname -I | awk '{print $NF}'|awk -F '. ...

  7. php实现大文件上传分片上传断点续传

    前段时间做视频上传业务,通过网页上传视频到服务器. 视频大小 小则几十M,大则 1G+,以一般的HTTP请求发送数据的方式的话,会遇到的问题:1,文件过大,超出服务端的请求大小限制:2,请求时间过长, ...

  8. windbg调试托管代码 .Net clr

    现在很多的程序都是多语言混合编程的,比如我司的产品,就是用C++/.net clr混合编制的.那么当我们调试这样的程序时,一定要注意,比如有时我们只看到c++的栈和名称,而.net clr的代码确看不 ...

  9. POJ2421Constructing Roads

    Constructing Roads Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 23343   Accepted: 10 ...

  10. BZOJ 4571: [Scoi2016]美味

    二次联通门 : BZOJ 4571: [Scoi2016]美味 /* BZOJ 4571: [Scoi2016]美味 dalao们都在说这题如果没有加法balabala就可以用可持久化trie解决了 ...