现在的位置: 首页 > 综合 > 正文

linux下文件同步神器——rsync

2018年01月22日 ⁄ 综合 ⁄ 共 2317字 ⁄ 字号 评论关闭

        参考:http://club.topsage.com/thread-237521-1-1.html

                    http://os.51cto.com/art/201009/225962.htm

                    http://www.cnblogs.com/szw/p/3381705.html

        最近朋友有一个需求,就是每天定时同步远程服务器上的文件到本地,于是机缘巧合就接触到了rsync,如果你有幸搜索到这篇文章,那么祝贺你,因为你可以踩在我的肩膀上去做这件事情(我是通过一步步摸索出来的),从而可以少走很多弯路,废话少说,进正文:

        注:以上很多操作实在超级用户权限下完成的因此建议 sudo -s切换到超级用户下执行。

        1、下载&安装:

        http://rsync.samba.org/ 可以下载到最新的rsync源码包。

        # tar -xzpvf rsync-2.5.6.tar.gz
  # cd rsync-x.x.x/
  # ./configure --prefix=/usr/local/rsync
  # make
  # make install

        以上命令完成rsync的安装。

        2、配置rsync服务端:

        (1)修改或建立配置文件rsyncd.conf。
  # vi /etc/rsyncd.conf

        ####################################################################
  #先定义整体变量
  secrets file=/etc/rsyncd.secrets
  motd file=/etc/rsyncd.motd
  read only=yes
  list=yes
  uid=0
  gid=nobody
  hosts allow=192.168.89.100 #允许访问rsync服务的IP
  hosts deny=192.168.89.0/50 #禁止访问rsync服务的IP
  max connections=2
  log file=/var/log/rsyncd.log
  pid file=/var/run/rsyncd.pid
  lock file=/var/run/rsync.lock

  #定义需要rsync的目录
  [data]
  comment=Data from zyb@192.168.89.101
  path=/home/zyb/data
  auth users=zyb

        #######################################################################

  (2)修改或建立配置文件rrsyncd.secrets.
  # vi /etc/rsyncd.secrets
  rsyncd.secrets存储rsync服务的用户名和密码,它是一个明文的文本文件,下面是一个rsyncd.secrets文件的例子:
  zyb:123456
    该文件一般不允许随便修改,因此文件的属性必须,因此权限设为600,即只有超级用户可以读写:
  # chmod 600 /etc/rsyncd.secrets

  (3)rsyncd.motd
  # vi /etc/rsyncd.motd
  rsyncd.motd记录了rsync服务的欢迎信息,你可以在其中输入任何文本信息,如:
  Welcome to use the rsync services!

  (4)检查services
  # vi /etc/services
  services并不是rsync的配置文件,这一步也可以不做。而修改了services文件的好处就在于
系统知道873端口对就的服务名为rsync。修改services的方法就是确保services中有如下两行,
没有的话就手动加入:
  rsync  873/tcp  # rsync
  rsync  873/udp  # rsync

  (5)修改/etc/xinetd.d/rsync

        如果找不到xinitd.d目录,请使用apt-get install xinitd安装xinitd。
  # vi /etc/xinetd.d/rsync
  建立一个名为/etc/xinetd.d/rsync文件,输入以下内容:
  service rsync
  {
    disable = no
    socket_type  = stream
    wait      = no
    user      = root
    server     = /usr/local/rsync/bin/rsync
    server_args  = --daemon
    log_on_failure += USERID
  }

  (6)重启rsync服务
  # /etc/init.d/rsync rstart
  这样rsync服务端(192.168.89.101)就运行起来了,接下来是客户端如何使用的问题。

        3、rsync客户端。

        rsync客户端不需要做复杂的配置,只需要按照1中的步骤安装rsync即可,使用起来可以按照http://os.51cto.com/art/201009/225962.htm 链接中提供的案例按照自己的需求合理使用。

         rsync -azv zyb@192.168.89.101::data /home/test/这是我测试远程服务服务同步到本地的命令。

【上篇】
【下篇】

抱歉!评论已关闭.