#!/bin/bash
for i in $(cat ./host.txt)
do
echo $i > ./tmp.txt
HOSTNAME=$(cut -d ':' -f1 ./tmp.txt)
IP=$(cut -d ':' -f2 ./tmp.txt)
PASS=$(cut -d ':' -f3 ./tmp.txt)
/usr/bin/expect <<-EOF
spawn ssh $IP
expect {
"yse/no" { send "yse\r";exp_continue }
"password" { send "$PASS\r" }
}
expect "*#"
send "cd /etc/yum.repos.d/ && rm -rf *.repo\r"
expect "*#"
send "wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo\r"
expect "*#"
send "wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo\r"
expect "*#"
set timeout 300
send "yum -y install salt-minion\r"
expect "*#"
send "exit\r"
interact
expect eof
EOF
sleep 30 /usr/bin/expect <<-EOF
spawn ssh $IP
expect {
"yse/no" { send "yse\r";exp_continue }
"password" { send "$PASS\r" }
}
expect "*#"
send "sed -i 's/#master: salt/master: 172.16.50.30/g' /etc/salt/minion\r"
expect "*#"
send "sed -i 's/#id:/id: $HOSTNAME/g' /etc/salt/minion\r"
expect "*#"
send "/etc/init.d/salt-minion restart\r"
expect "*#"
send "exit\r"
interact
expect eof
EOF
done
[root@centos- shell]# cat host.txt
lnmp:192.168.1.50:password
[root@centos- shell]#
[root@centos- shell]# cat salt.sh
#!/bin/bash for i in $(cat ./host.txt) do
echo $i >./tmp.txt
host_name=$(cut -d : -f1 ./tmp.txt)
ip=$(cut -d : -f2 ./tmp.txt)
pass=$(cut -d : -f3 ./tmp.txt) echo $host_name echo "$ip" echo "$pass" done
[root@centos- shell]# cat salt2.sh
#!/bin/bash for i in $(cat ./host.txt) do
host_name=`echo $i | awk -F : '{print $1}'`
ip=`echo $i | awk -F : '{print $2}'`
pass=`echo $i | awk -F : '{print $3}'` echo $host_name echo "$ip" echo "$pass" done
[root@centos- shell]#

expect 安装 salt 客户端的更多相关文章

  1. 安装SVN客户端重启电脑之后,右键未出现SVN选项的原因

    今天安装SVN客户端明明安装成功,电脑也重启过了,但是就是在右键里找不到SVN,百度了很久,删注册表.建用户组之类的方法都试过了,但是都没有效果. 后来才找到真正的原因,我的安装包是32位的,系统是6 ...

  2. 在本地windows机器上安装SecureCRT客户端

    一.SecureCRT客户端介绍. SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单地说是Windows下登录UNIX或Linux服务器主机的软件. SecureCRT支持 ...

  3. linux tcl expect 安装(转)

    linux tcl expect 安装 一.Tcl安装 1.  下载:tcl8.4.20-src.tar.gz http://www.tcl.tk/software/tcltk/downloadnow ...

  4. 不安装oracle客户端,用plsql连接oracle

    常用的Oracle开发的工具有SQL Developer和PL/SQL Developer,个人感觉前者虽然跨平台性优于后者,但比较大(大于300M)占用资源,而且用户体验也一般,而后者相对就小很多( ...

  5. [转]Liunx上安装svn客户端

    [转]Liunx上安装svn客户端 虽然说很简单的用yum install subversion就可以将svn安装到系统中,但是yum库中的版本实在是有点低——1.4.2.因此我选择以源码方式安装.安 ...

  6. 不安装Oracle客户端使用PLSQL

    要连接Oracle往往需要安装上百兆的ORACLE客户端,显得十分麻烦.先就介绍如何通过使用精简客户端,且不需要安装的客户端,配合PLSQL连接oracle数据库.   其实这些操作都很简单,写在这里 ...

  7. 《oracle每日一练》免安装Oracle客户端使用PL/SQL

    免安装Oracle客户端使用PL/SQL Oracle客户端挺招人烦的,部署连接它的应用通常需要先安装它的客户端,安装程序要求在目标机器上写注册表,假设你没有洁癖的话,你仍可能被下面的事情绊住:当你的 ...

  8. iOS 没有安装对应客户端,不应显示对应的图标

    现在很多APP为了让用户更加快捷方便注册,都会使用第三方进行登录,例如QQ/微信/淘宝等.但是上线审核被拒,大致会出现以下内容: Additionally, we found that your ap ...

  9. 代码生成器Kalman Studio2.2发布,完美支持Oracle,不需要安装Oracle客户端

    这次更新主要是增加对Oracle的支持,不需要安装Oracle客户端,下面的配置文件列出了Kalman Studio支持的几种数据库 <?xml version="1.0" ...

随机推荐

  1. git 上传代码

    1.注册GitHub账号 2.在GitHub上建立github仓库 3.下载git 4.配置git 5.生成SSH密钥,并把密钥添加SSH密钥到GitHub上 6.创建本地仓库并上传代码到github ...

  2. springboot多模块开发以及整合dubbo\zookeeper进行服务管理

    之前研究了springboot单工程的使用,参考git地址:https://github.com/qiao-zhi/springboot-ssm 下面研究springboot多模块开发的过程. 1.模 ...

  3. SQL Server - 哈希索引

    转载自:https://blog.csdn.net/josjiang1/article/details/80637076 作者:josjiang1 ————————总结———————— 使用场景: 1 ...

  4. 【sql inject】sql盲注技巧

    SAMPLE 知识点 使用 AND 1 = 1 / 1 或者 1 = 1 / 0 判断是否存在注入,如果正确就会返回页面,如果错误就是1/0语法错误使得页面报错: queueID = 743994 A ...

  5. k64 datasheet学习笔记31---External Bus Interface (FlexBus)

    1.前言 FlexBus多功能外部总线接口控制器是一个硬件模块: (1)通过并行总线提供存储器扩展或与外设连接: (2)如下的同步或异步的slave-only设备可以直连到FlexBus总线或者只需增 ...

  6. boost 实现http断点续传

    // testc.cpp : Defines the entry point for the console application. // #include "stdafx.h" ...

  7. HTML5 播放器

    之前一个前端群里 大牛 做了一个自适应的HMLT5播放器 最近根据其思路做了一个相对单一移动端的demo,demo用的图片和歌曲json的数据设计 都是群里大牛做的,在这谢谢~: 同时借鉴的几篇文章: ...

  8. (常用)os模块

    os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径os.chdir("dirname")  改变当前脚本工作目录:相当于shell下cdos.curdi ...

  9. 使用js下载文件

    使用Echarts地图时,需要一些地图数据,到Echarts下载地图数据文件时,发现其下载是直接通过js下载,从其网站上扒下来的记录于此 FileSave.min.js网络地址:http://ecom ...

  10. const成员函数和mutable关键字

    一.const成员函数 class MyClass { public: void fun() const { } private: int m_nValue; } const成员函数内不能修改成员变量 ...