ssh-免密登陸批量發送腳本

 

 

 

1.新建node文件(文件中爲須要發送的節點,不能包含主文件服務器)node

node01
node02
node03
node04

 

2.ssh的免密登陸批處理腳本(須要同級目錄下的nodes文件)bash

#!/bin/bash
PASSWORD=password

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;}
        }";
}

cat nodes | while read host
do
{
    auto_ssh_copy_id $host $PASSWORD
}&wait
done

 

三、scp批處理(須要同級目錄下的nodes文件),即下文命令中的scp.sh服務器

#!/bin/bash
cat nodes | while read host
do
{
    scp -r $1 $host:$2
}&wait
done

 

四、ssh批處理(須要同級目錄下的nodes文件),即下文命令中的ssh.shssh

#!/bin/bash
cat nodes | while read host
do
{
    ssh $host $1
}&wait
done

使用scp批處理拷貝/etc/sysctl.conf到各節點spa

./scp.sh /etc/sysctl.conf /etc/

使用ssh批處理生效code

./ssh.sh "sysctl -p"
相關文章
相關標籤/搜索