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