Shell 自動化部署免密登錄


1 .配置主機名稱

  參考:Linux 修改主機名 和 ip 映射關系

2 . 編寫腳本

root.sh 內容

#!/bin/bash

SERVERS="hadoop0 hadoop1 hadoop2"
PASSWORD=lg


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;}
            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
# 將 install.sh 傳到每個節點

for SERVER in $SERVERS
do
scp install.sh root@$SERVER:/root
ssh root@$SERVER /root/install.sh
done

 

 

3. 執行腳本

  sh root.sh  

 

本部分屬於一步一步學習大數據系列之 Linux 的章節,歡迎訂閱更多文章

更多內容請參考:一步一步學習大數據系列介紹


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM