• 集群ssh免密登陆配置


    #!/bin/bash
    
    
    function auto_ssh() 
    {
        expectIsExists=`dpkg -l |grep expect` 
        if [ -z $expectIsExists ]
        then
            sudo apt-get update
            sudo apt-get  install expect -y
        fi
    
        [ ! -f /root/.ssh/id_rsa.pub ] && ssh-keygen -t rsa -P '' &>/dev/null  # 密钥对不存在则创建密钥
    
        while read line;do
                ip=`echo $line | cut -d " " -f1`             
                user_name=`echo $line | cut -d " " -f2`      
                pass_word=`echo $line | cut -d " " -f3`      
        expect <<EOF
                spawn ssh-copy-id -i /root/.ssh/id_rsa.pub $user_name@$ip   
                expect {
                        "yes/no" { send "yes\n";exp_continue}     
                        "password" { send "$pass_word\n"}
                }
                expect eof
    EOF
    done < host_ip.txt 
    }
    
    function hosts() 
    {
        while read -r line;do
            ip=`echo $line | cut -d " " -f1` 
            hostname=`echo $line | cut -d " " -f4` 
            echo "${ip}   ${hostname}" >> /etc/hosts
        done < host_ip.txt 
    }
    
     
    auto_ssh
    hosts
    
    # cat host_ip.txt 
    # 172.21.80.1 root password node-001
    # 172.21.80.2 root password node-002
    # 172.21.80.3 root password node-003
    

      

  • 相关阅读:
    软工作业01 P18 第四题
    自我介绍
    进行代码复审训练
    源代码管理工具调查
    软工作业PSP与单元测试训练
    进行代码复审训练
    源代码管理工具
    软工作业PSP与单元测试训练
    作业
    第一堂课
  • 原文地址:https://www.cnblogs.com/shanghai1918/p/16411143.html
Copyright © 2020-2023  润新知