zk中的xsync的sh脚本与免密登录配置

1.在/home/wjj/bin 目录下创建 xsync 文件

[wjj@hadoop102 opt]$ cd /home/wjj
[wjj@hadoop102 ~]$ mkdir bin
[wjj@hadoop102 ~]$ cd bin
[wjj@hadoop102 bin]$ vim xsync

在该文件中编写如下代码

#!/bin/bash
#1. 判断参数个数
if [ $# -lt 1 ]
then
   echo Not Enough Arguement!
   exit;
fi

#2. 遍历集群所有机器
for host in hadoop102 hadoop103 hadoop104
do
   echo ==================== $host ====================
   #3. 遍历所有目录,挨个发送
   for file in $@
   do
       #4. 判断文件是否存在
       if [ -e $file ]
           then
               #5. 获取父目录
               pdir=$(cd -P $(dirname $file); pwd)
               #6. 获取当前文件的名称
               fname=$(basename $file)
               ssh $host "mkdir -p $pdir"
               rsync -av $pdir/$fname $host:$pdir
           else
               echo $file does not exists!
       fi
   done
done

2.修改脚本 xsync 具有执行权限

[wjj@hadoop102 bin]$ chmod 777 xsync

3.测试脚本

[wjj@hadoop102 ~]$ xsync /home/atguigu/bin

免密登录

1.生成公钥和私钥

[wjj@hadoop102 .ssh]$ pwd
/home/wjj/.ssh
[wjj@hadoop102 .ssh]$ ssh-keygen -t rsa

如果找不到.ssh文件,在 /home/wjj目录下输入 ls -al 显示隐藏文件即可看到

然后敲(三个回车),就会生成两个文件 id_rsa(私钥)、id_rsa.pub(公钥)

2.将公钥拷贝到要免密登录的目标机器上 

[wjj@hadoop102 .ssh]$ ssh-copy-id hadoop102
[wjj@hadoop102 .ssh]$ ssh-copy-id hadoop103
[wjj@hadoop102 .ssh]$ ssh-copy-id hadoop104

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值