rsync

2022-01-16/2022-01-16
0 评论 86 浏览

参考文档:
集群服务器的同步xsync命令使用
xsync同步脚本

1. 介绍

先介绍 rsync,类似于 scp ,可以将文件发送到别的服务器,效率更高。

1yum -y install rsync
2rsync -rvl 需要同步的文件或目录 目标服务器的用户@主机ip地址:对应主机的位置

配置免密操作请参考 ssh 用户配置

2. 同步配置至多台服务器

我们在 /usr/loca/bin 目录下自建脚本 xsync.sh

 1#!/bin/bash
 2#1. 判断参数个数
 3if [ $# -lt 1 ]
 4then
 5  echo Not Enough Arguement!
 6  exit;
 7fi
 8#2. 遍历集群所有机器
 9user=`root`
10for host in 主机名1 主机名2 主机名3
11do
12  echo ====================  $host  ====================
13  #3. 遍历所有目录,挨个发送
14  for file in $@
15  do
16    #4 判断文件是否存在
17    if [ -e $file ]
18    then
19      #5. 获取父目录
20      pdir=$(cd -P $(dirname $file); pwd)
21      #6. 获取当前文件的名称
22      fname=$(basename $file)
23      ssh $host "mkdir -p $pdir"
24      rsync -rvl $pdir/$fname $user@$host:$pdir
25    else
26      echo $file does not exists!
27    fi
28  done
29done
评论
发表评论
       
       
取消