一、安装
1.安装
yum -y install rsync
2.启动服务
systemctl start rsyncd.service
3.加入开机启动
systemctl enable rsyncd.service
二、创建Xsync文件
1.#在/usr/local/bin下新建xsync文件
cd /usr/local/bin
touch xsync
2.#给文件赋读写权限
chmod 777 xsync
3.#编辑xsync文件
vim xsync
复制如下 注意:以下为xsync脚本代码,如果服务器之间无法用主机名ping通,脚本是跑不起来的
#!/bin/bash
#1 获取输入参数个数,如果没有参数,直接退出
pcount=$#
if [ $pcount -lt 1 ]
then
echo Not Enough Arguement!
exit;
fi
#2. 遍历集群所有机器,hadoop为主机名
for host in hadoop1 hadoop2 hadoop3
do
echo ==================== $host ====================
#3. 遍历所有目录,挨个发送
for file in $@
do
#4 判断文件是否存在
if [ -e $file ]
then
#5. 获取父目录
pdir=$(cd -P $(dirname $file); pwd)
echo pdir=$pdir
#6. 获取当前文件的名称
fname=$(basename $file)
echo fname=$fname
#7. 通过ssh执行命令:在$host主机上递归创建文件夹(如果存在该文件夹)
ssh $host "mkdir -p $pdir"
#8. 远程同步文件至$host主机的$USER用户的$pdir文件夹下
rsync -av $pdir/$fname $USER@$host:$pdir
else
echo $file does not exists!
fi
done
done