自動下載安裝java
boot.sh
:配置SSH遠程免密登錄挨决,并將install.sh
拷貝到遠程主機執(zhí)行
#!/bin/bash
SERVERS="mini3"
PASSWORD=huachao
BASE_SERVER=mini
auto_ssh_copy_id() {
expect -c "set timeout -1;
spawn ssh-copy-id $1;
expect {
*(yes/no)* {send -- yes\r;exp_continue;}
*assword:* {send -- $2\r;exp_continue;}
*(yes/no)* {send -- yes\r;exp_continue;}
eof {exit 0;}
}";
}
ssh_copy_id_to_all() {
for SERVER in $SERVERS
do
auto_ssh_copy_id $SERVER $PASSWORD
done
}
ssh_copy_id_to_all
for SERVER in $SERVERS
do
scp install.sh root@$SERVER:/root
ssh root@$SERVER /root/install.sh
done
install.sh
:下載解壓jdk-7u45-linux-x64.tar.gz
掸绞,并配置java環(huán)境變量
#!/bin/bash
BASE_SERVER=mini1
yum install -y wget
wget $BASE_SERVER/soft/jdk-7u45-linux-x64.tar.gz
tar -zxvf jdk-7u45-linux-x64.tar.gz -C /usr/local
cat >> /etc/profile << EOF
export JAVA_HOME=/usr/local/jdk1.7.0_45
export PATH=\$PATH:\$JAVA_HOME/bin
EOF
~
執(zhí)行上面腳本的環(huán)境和條件
在主機和每一臺從機上安裝expect
yum -y install expect
在主機和每一臺從機上安裝ssh_client(scp命令依賴ssh客戶端)
yum -y install openssh-clients.x86_64
在主機上要先生成ssh的key
ssh-keygen
問題
問題1:expect:command not found
解決:yum -y install expect
問題2: WARNING: POSSIBLE DNS SPOOFING DETECTED!
出現(xiàn)這種問題可以是因為之前使用過命令ssh-copy-id
對要遠程連接的主機腐碱,現(xiàn)在該主機的IP發(fā)生了變化
解決: vi /root/.ssh/known_hosts
, 刪除掉那個主機對應(yīng)的公鑰梯啤,保存退出再連接就可以了
問題3:spawn ssh-copy-id mini1
/usr/bin/ssh-copy-id: ERROR: No identities found
未生成ssh的key
解決:在主機上執(zhí)行:ssh-keygen
最后編輯于 :2017.12.10 01:39:40
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者