基本安装

yum install rsync

配置文件位置

/etc/rsyncd.conf


rsync同步备份软件分2种场景使用

一.不同服务器之间备份

    1.使用服务端进程来同步

     修改配置文件如下

    uid = root
    gid = root
    use chroot = yes
    max connections = 4
    pid file = /var/run/rsyncd.pid
    # exclude = lost+found/
    # transfer logging = yes
    # timeout = 900
    # ignore nonreadable = yes
    # dont compress   = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2
    [test]
        path = /test/files/
        comment = test bakup

       启动服务

        rsync --daemon

       关闭服务:ps -ef | grep rsync

                 kill -9 进程号

                 rm -rf /var/run/rsyncd.pid 

                 或者自己写脚本

       启动服务之后,客户端使用

      rsync -avzP --delete root@10.20.16.219::test /home/

       注意:此处的test就是配置文件中括号里面的test而且ip后面是2个冒号。

 

    2.不使用服务端进程来同步

    rsync -avzP --delete root@10.20.16.219:/test/123/ /home/


二.相同服务器之间备份

    不需要配置,不需要启动服务进程,只需要用客户端命令就可以实现同步:

   rsync -avzP --delete /test/源文件夹/ /test2/目标文件夹/

    

rsync命令使用介绍

     -a archive模式操作、复制目录、符号连接相当于-rlptgoD

   -r 是递归

   -l 是链接文件,意思是拷贝链接文件;

     -p 表示保持文件原有权限;

     -t 保持文件原有时间;

     -g 保持文件原有用户组;

     -o 保持文件原有属主;

     -D 相当于块设备文件;

    -z 传输时压缩;

   -P 传输进度;

   -v 传输时的进度等信息,和-P有点关系,自己试试。可以看文档;

   -e ssh的参数建立起加密的连接。

   -u只进行更新,防止本地新文件被重写,注意两者机器的时钟的同时

   --progress是指显示出详细的进度情况

   --delete是指如果服务器端删除了这一文件,那么客户端也相应把文件删除,保持真正的一致

   --password-file=/password/path/file来指定密码文件,

    这样就可以在脚本中使用而无需交互式地输入验证密码了,这里需要注意的是这份密码文件权限属性要设得只有属主可读。