rsync服务器搭建以及配置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了rsync服务器搭建以及配置相关的知识,希望对你有一定的参考价值。

一、环境准备

   服务器:192.168.200.141 centos6.6

   客户端:192.168.200.142 centos6.6

二、安装

   1.安装基本包

     yum install -y rsync xinetd

   2.关掉iptables和selinux

     service iptables stop(本实验的话其实只需要清掉iptables的规则即可:iptables -F)

     setenforce 0(这是临时生效,重启后没用,要想永久生效的话,echo "SELINUX=disabled"                     >/etc/selinux/config)

三、rsync服务器端配置

      1.如果服务器上rsync的负载比较小的话,就用xinetd的运行方式,此时需要打开xinetd中rsync服务

        vim /etc/xinetd.d/rsync

     # default: off

     # description: The rsync server is a good addition to an ftp server, as it \

     #       allows crc checksumming etc.

     service rsync

    {

           disable = yes

           flags           = IPv6

           socket_type     = stream

           wait            = no

           user            = root

           server          = /usr/bin/rsync

           server_args     = --daemon

           log_on_failure  += USERID

     }


    只需要将disable = yes改成disable = no即可开启xinetd中的rsync服务

    CentOS默认是以xinetd的模式运行rsync的,配置文件在/etc/xinetd.d/rsync中。


   2.如果服务器上rsync的负载比较大的话,就使用独立运行的模式。上述的/etc/xinetd.d/rsync内容则不需要改动。


   3.前面两种rsync启动方式只能选一种,这里我选取第二种,即独立启动的方式。

     rsync的配置文件是/etc/rsyncd.conf,这个文件默认是没有的,需要自己手动创建。

     vim /etc/rsyncd.conf

          

    uid=root                                    #以指定的 UID 传输文件

    gid=root                                    #以指定的 GID 传输文件

    #hosts allow=10.50.53.100                  #允许指定主机访问

    #hosts deny=0.0.0.0/32                      #阻止指定主机访问

    use chroot=no

    max connections=10                          #允许的最大连接数

    pid file=/var/run/rsyncd.pid                #指定pid文件路径

    lock file=/var/run/rsync.lock              #指定进程锁文件

    log file=/var/log/rsyncd.log                #指定日志路径

    timeout=600                                #连接超时时间

    port=873                                    #指定tcp端口


    [backup]

    path=/backup/                               #同步的本地目录(此目录需要创建)

    read only=false

    list=false

    auth users=rsync                            #授权用户

    secrets file=/etc/rsync.password            #用户和密码列表(此文件需要创建)

    uid=0

    gid=0

   

    上面最后两行开始我没有加,然后后面客户端同步时报错,所以我根据错误提示加了两行。网友们如果不加也可以的话,就不加吧。


  4.写好rsync的配置文件之后,就要创建要同步的本地目录/backup,并根据需要授权rsync服务的用户读写/backup目录

    mkdir -p /backup


  5.创建账号以及密码文件

     echo "rsync:redhat" >/etc/rsync.password

     chmod 600 /etc/rsync.password


  6.启动rsync服务

     (1)如果前面是选用xinetd启动模式的话:

     service xinetd restart

     chkconfig rsync on

     查看下873端口开了没

     ss -ntulp|grep 87

     (2)如果前面是以独立方式运行rsync的话启动rsync的话:

      rsync --daemon

      echo "/usr/bin/rsync --daemon" >>/etc/rc.local

      ss -ntulp|grep 87

   

四、rsync客户端配置

  1.安装rsync包

    yum install -y rsync

  2.创建密码文件并授权

    echo "redhat" >/etc/rsync.password

    chmod 600 /etc/rsync.password

  3.关掉防火墙以及selinux

     service iptables stop(或者不关闭防火墙,直接清掉防火墙中的规则也可以,iptbles -F)

     setenforce 0(这是临时生效,重启后没用,要想永久生效的话,echo "SELINUX=disabled"                     >/etc/selinux/config)     

五、客户端测试

     本地推送:将本地的文件同步到备份服务器中去(192.168.200.141)

     rsync -avz /tmp [email protected]::backup/ --password-file=/etc/rsync.password

     

     慎重使用--delete参数

     例:

      mkdir empty

      rsync -avz --delete empty/ [email protected]::backup/ --password-file=/etc/rsync.password

      此时远程服务器的/backup会被清空,这是因为本地的empty目录中是空的,而--delete参数的意思是如果本地empty中有文件,远程服务器的/backup目录中的文件要与客户端empty保持文件一致,远程服务器的/backup中有的而客户端empty没有的,则服务器端会删掉客户端没有的内容。如果推送的本地目录是空的,则远程服务器为了保持数据一致backup目录也会为空。

    

    

本文出自 “IT” 博客,请务必保留此出处http://wang119.blog.51cto.com/9428009/1792325

以上是关于rsync服务器搭建以及配置的主要内容,如果未能解决你的问题,请参考以下文章

rsync服务器搭建

rsync服务搭建--2018.5.8 [优化后最终版]

rsync服务器搭建

搭建backup服务器rsyncdaemon服务模式之二rsync客户端配置

运维笔记:Linux搭建rsync备用服务器,及配置文件详解

centos7服务搭建常用服务配置之二:Rsync+sersync实现数据实时同步