同步文件rsync

Linux中实现远程复制文件的方式常用scp命令,简单方便,例如
   
   
  1. scp -r node1:/data/* /data/

操作与使用都很简单,不能实现文件的排除等高级操作,下面介绍下常用的命令rsync

rsync实现文件同步的方式包括
  • SSH方式是使用系统上的用户通过SSH进行同步操作。
  • daemon方式是rsync服务器会开一个873端口,等待客户端去连接,连接是进行验证,通过后进行同步。

一、首先介绍使用rsync服务器的操作步骤
  1. 安装rsync服务器
          
          
    1. yum install rsync -y
  2. 配置rsync服务器,简单配置有两个文件,一个是rsyncd.conf,和rsyncd.secret文件,一个是服务器基本配置,一个服务器账户配置
  3. 启动rsync服务器
          
          
    1. rsync --daemon
  4. 命令行记性copy文件
          
          
    1. # 将rsync服务器上的data名下的文件复制到本地/tmp目录下
    2. rsync node1::data /tmp

二、使用SSH方式copy文件
这种方式很简单不需要有rsync服务器,但是需求复制双方都要安装rsync命令,简单实现为:
   
   
  1. rsync -vzrtopg --progress -e ssh --exclude-from /data/help/config/exclude.properties --delete /data/* node2:/data

三、使用rsync同步文件到各个节点上
以下是使用SSH方式来同步文件的,目录结构为:

rsync_file.sh内容:
     
     
  1. #!/usr/bin/env bash
  2. PWD=`dirname $0`
  3. for host in `cat $PWD/../config/nodes.properties`; do
  4. echo $host
  5. rsync -vzrtopg --progress -e ssh --delete --exclude-from $PWD/../config/exclude.properties /data/* $host:/data
  6. done

exclude.properties内容为:
      
      
  1. soft/
  2. help/
nodes.properties内容为:
       
       
  1. node1
  2. node2
  3. node3

其中exclude.properties中包含的是被排除的文件,nodes.properties中包含的是同步到的主机名

提示:在同步过程中,可能需要输入主机账户,可以通过ssh-keygen免密来排除问题





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值