在/bin/目录下,创建一个xsync,并且编辑,编写同步脚本
#!/bin/bash
#1. 判断参数的个数
if [ $# -lt 1 ]
then
echo Not Enough Arguement!
exit;
fi
#2. 遍历所有主机
for host in 192.168.1.244 192.168.1.245 192.168.1.246
do
echo ============$host============
#3. 遍历所有目录挨个发送
for file in $@
do
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
配置免密登录
cd ~/.ssh
ssh-keygen -t rsa
一路回车
然后
ssh-copy-id 192.168.1.244
ssh-copy-id 192.168.1.245
ssh-copy-id 192.168.1.246
最后使用xsync命令
只要输入xsync abc.txt 就可以同步当前一样目录的abc.txt文件到其他服务器。