shell脚本部署无密码访问

为了实现一些组件的自动化部署,可能要设置服务器的免密访问比较方便,最后实现了自动化部署密码脚本,以下为实现代码逻辑。代码比较庞大,不能一一道出了。
#!/bin/bash

ips=( '10.100.112.79' '10.100.112.203' '10.100.112.204' '10.100.112.205' '10.100.112.95' '10.100.112.125' ) //所有关联ip
masterLenth=4 //ips集合前几个需要配置无密访问
gname=hgroup
uname=root //无密访问账号(要先生成root无密访问权限)
password="123456" //无密访问密码
currpath=$PWD

hostip=` /sbin/ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:" `//获取本机ip ,
echo "host_ip$hostip"
#如果是root权限,先生从root免密密匙
if [ "$uname" = "root" ];then
ssh root@${ips[i]} yum install -y expect
expect <<EOF
spawn ssh-keygen -t rsa
expect {
"*password:" {
send "$password\n";
exp_continue
}
"*id_rsa):" {
send "\n";
exp_continue
}
"*(y/n)?" {
send "y\n"
exp_continue
}
"*passphrase):" {
send "\n"
exp_continue
}
"*again:" {
send "\n"
}
}
expect eof
EOF
#initSshdConfig初始化免密访问的sshd-config文件,initSshdConfig代码链接本博客[url]sshd_config无密访问的处理[/url]
sh $currpath/initSshdConfig.sh $hostip $currpath $hostip
fi

#给所有机器新增账号
for ip in ${ips[@]}
do
#如果是root账号,先授权root免密访问其它机器权限
if [ "$uname" = "root" ];then
sh $currpath/resrsa.sh $ip $uname $password
echo "$hostip------------------>$ip"
fi

if [ "$ip" = "$hostip" ];then
echo "$hostip"
sh $currpath/useradd.sh $gname $uname $password
# rm -rf /usr/$uname/.ssh
# sh apecttest.sh $gname $uname $name $ip

else
# echo ${ip}
# ssh ${ip} mkdir -p $currpath -m 777
# scp -r $currpath/base root@${ip}:$currpath/
# scp $currpath/useradd.sh root@${ip}:$currpath/
if [ "$uname" -ne "root" ];then
#新增账号[url]http://lyongq04.iteye.com/blog/2297255[/url]
ssh ${ip} $currpath/useradd.sh $gname $uname $password
fi
fi
done

#给ips前masterLenth服务器赋予免密访问所有机器的权限,这类机器暂时简称master
for((i=0;i<masterLenth;i++))
do
echo "master ${ips[i]}"
#scp $currpath/initSshdConfig.sh root@${ips[i]}:$currpath/
sh $currpath/initSshdConfig.sh ${ips[i]} $currpath $hostip
if [ "${ips[i]}" != "$hostip" ];then
# scp /etc/ssh/sshd_config root@${ips[i]}:/etc/ssh
scp $currpath/resrsa.sh root@${ips[i]}:$currpath/
fi

#远程为master 账号生产密匙
#if expect not install
ssh root@${ips[i]} yum install -y expect
if [[ "$uname" != "root" || "$uname" == "root" && "${ips[i]}" != "$hostip" ]];then
echo "$hostip ssh-keygen-------------------------------------------------------->>${ips[i]}"
expect <<EOF
spawn ssh $uname@${ips[i]} ssh-keygen -t rsa
expect {
"*password:" {
send "$password\n";
exp_continue
}
"*id_rsa):" {
send "\n";
exp_continue
}
"*(y/n)?" {
send "y\n"
exp_continue
}
"*passphrase):" {
send "\n"
exp_continue
}
"*again:" {
send "\n"
}
}
expect eof
EOF
fi
done
#给所有master授权免密访问所有机器
for ip in ${ips[@]}
do
for((i=0;i<masterLenth;i++))
do
if [ "${ips[i]}" = "$hostip" ];then
sh $currpath/resrsa.sh $ip $uname $password
else
ssh root@${ips[i]} "$currpath/resrsa.sh $ip $uname $password"
fi
done
done
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 自适应滤波器原理第五版英文PDF是指《Adaptive Filter Theory, 5th Edition》的电子书PDF版本。自适应滤波是一种能够自动调整滤波器参数、根据输入信号实时更新的滤波技术。这本书是有关自适应滤波理论的经典教材,作者是Simon Haykin。 这本书介绍了自适应滤波器原理算法和应用。它涵盖了自适应滤波器的基本原理,比如递归最小二乘法RLS)和最小均方(LMS)算法。此外,书中还介绍了多通道自适应滤波、非线性自适应滤波、自适应信号处理和自适应阵列天线等相关内容。 这本书的英文PDF版本可以提供给读者更方便的阅读方式。有了电子书的版本,读者可以随时随地使用电子设备进行阅读,而不需要携带实体书本。此外,电子书还提供了可搜索功能,读者可以快速找到关键词或内容,方便学习和参考。 总的来说,自适应滤波器原理第五版英文PDF是一本关于自适应滤波领域的学术书籍,内容详实,对于学习自适应滤波器原理和应用的读者来说是一本很好的参考资料。 ### 回答2: 自适应滤波器原理第五版英文pdf是一本介绍自适应滤波器原理的电子书,全书共有300页。自适应滤波器是一种能够自动调整其参数以适应输入信号特征的滤波器。这本电子书通过详细讲解自适应滤波器原理算法来帮助读者理解和应用该技术。 该书的第五版根据前几版的反馈和改进进行了更新,包含了最新的自适应滤波器理论和应用。读者可以学习到自适应滤波器的基本概念、算法和性能评估方法。此外,该书还介绍了各种应用场景,如降噪、信号增强和自适应波束形成等。 这本英文pdf的优势在于它提供了全面且系统化的自适应滤波器知识,适合初学者和专业人士阅读。同时,该书充分考虑了读者的学习需求,使用了清晰且易懂的语言,配有大量的图表和例子,帮助读者更好地理解和应用这些概念。 需要注意的是,这本英文pdf提供了第五版的内容,因此读者需要确保自己具备一定的数学和信号处理基础,以便更好地理解和应用相关概念。通过阅读和学习这本电子书,读者可以深入了解自适应滤波器原理算法,并将其应用于实际工程中。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lyongq04

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值