rsync备份服务器

1.rsync基本概述

rsync是一款开源、快速、多功能、可实现全量及增量的本地或远程数据同步备份的优秀工具。rsync软件适用于Unix/linux/Windows等多种操作系统平台。

2.rsync简介

rsync英文称为remote
synchronization,从软件的名称就可以看出来,rsync具有可使本地和远程两台主机之间的数据快速复制同步镜像、远程备份的功能,这个功能类似于ssh带的scp命令,但是又优于scp命令的功能,scp每次都是全量拷贝,而rsync可以增量拷贝。当然,rsync还可以在本地主机的不同分区或目录之间全量及曾量的复制数据,这又类似cp命令。但是同样也优于cp命令,cp每次都是全量拷贝,而rsync可以增量拷贝。
在同步数据的时候,默认情况下,rsync通过其独特的“quick
check”算法,它仅同步大小或者最后修改时间发生变化的文件或目录,当然也可根据权限、属主等属性的变化同步,但是需要制定相应的参数,甚至可以实现只同步一个文件里有变化的内容部分,所以,可是实现快速的同步备份数据。
rsync官方地址:TP rsync监听端口:873 rsync运行模式:C/S

小提示:利用rsync还可以实现删除文件和目录的功能,这又相当于rm命令,一个rsync相当于scp、cp、rm,但是还优于他们的每一个命令。

3.rsync的特性

支持拷贝特殊文件,如连接文件、设备等。 可以有排除指定文件或目录同步的功能,相当于打包命令tar的排除功能。
可以做到保持原文件或目录的权限、时间、软硬链接、属主、组等所有属性均不改变 –p。
可以实现增量同步,既只同步发生变化的数据,因此数据传输效率很高(tar-N)。
可以使用rcp、rsh、ssh等方式来配合传输文件(rsync本身不对数据加密)。
可以通过socket(进程方式)传输文件和数据(服务端和客户端)*。
支持匿名的活认证(无需系统用户)的进程模式传输,可以实现方便安全的进行数据备份和镜像。

4.生产场景架构集群备份方案

1.借助cron+rsync把所有客户服务器数据同步到备份服务器。
2.针对公司重要数据备份混乱状况和领导提出备份全网数据的解决方案。
3.通过本地打包备份,然后rsync结合inotify应用把全网数统一备份到一个固定存储服务器,然后在存储服务器上通过脚本检查并报警管理员备份结果。

4.定期将IDC机房的数据 备份公司的内部服务器,防止机房地震及火灾问题导致数据丢失。
5.实时同步,解决存储服务器等的单点问题。

5.rsync命令

rsync命令是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。rsync使用所谓的“rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快。 rsync是一个功能非常强大的工具,其命令也有很多功能特色选项,我们下面就对它的选项一一进行分析说明。

①rsync的语法

rsync [OPTION]... SRC DEST
rsync [OPTION]... SRC [USER@]host:DEST
rsync [OPTION]... [USER@]HOST:SRC DEST
rsync [OPTION]... [USER@]HOST::SRC DEST
rsync [OPTION]... SRC [USER@]HOST::DEST
rsync [OPTION]... rsync://[USER@]HOST[:PORT]/SRC [DEST]

对应于以上六种命令格式,rsync有六种不同的工作模式:
1.拷贝本地文件。当SRC和DES路径信息都不包含有单个冒号":“分隔符时就启动这种工作模式。如:rsync -a /data /backup
2.使用一个远程shell程序(如rsh、ssh)来实现将本地机器的内容拷贝到远程机器。当DST路径地址包含单个冒号”:“分隔符时启动该模式。如:rsync -avz *.c foo:src
3.使用一个远程shell程序(如rsh、ssh)来实现将远程机器的内容拷贝到本地机器。当SRC地址路径包含单个冒号”:“分隔符时启动该模式。如:rsync -avz foo:src/bar /data
4.从远程rsync服务器中拷贝文件到本地机。当SRC路径信息包含”::“分隔符时启动该模式。如:rsync -av root@192.168.78.192::www /databack
5.从本地机器拷贝文件到远程rsync服务器中。当DST路径信息包含”::"分隔符时启动该模式。如:rsync -av /databack root@192.168.78.192::www
6.列远程机的文件列表。这类似于rsync传输,不过只要在命令中省略掉本地机信息即可。如:rsync -v rsync://192.168.78.192/www

②常用选项

-a           #归档模式传输, 等于-tropgDl
-v           #详细模式输出, 打印速率, 文件数量等
-z           #传输时进行压缩以提高效率
-r           #递归传输目录及子目录,即目录下得所有目录都同样传输。
-t           #保持文件时间信息
-o           #保持文件属主信息
-p           #保持文件权限
-g           #保持文件属组信息
-l           #保留软连接
-P           #显示同步的过程及传输时的进度等信息
-D           #保持设备文件信息
-L           #保留软连接指向的目标文件
-e           #使用的信道协议,指定替代rsh的shell程序
--exclude=PATTERN   #指定排除不需要传输的文件模式
--exclude-from=file #文件名所在的目录文件
--bwlimit=100       #限速传输
--partial           #断点续传
--delete            #让目标目录和源目录数据保持一致
--password-file=xxx #使用密码文件
##### 重点的段选项
-a = -rlptgoD 
-l                   #只是保留软链接文件 (相当于备份了一个快捷方式,但是不备份源文件)
-L                   #将软链接对应的真实文件进行备份传递
#####比较重点的长选项
--exclude=PATTERN   #指定排除不需要传输的文件模式
--exclude-from=file #文件名所在的目录文件
--bwlimit=100       #限速传输
--partial           #断点续传
--delete            #让目标目录和源目录数据保持一致

6.备份类型介绍(全量备份和增量备份的区别)

①全量备份和增量备份

Rsync是一款开源的、快速的、多功能的、可实现全量及增量的本地或远程数据同步备份的优秀工具

全量:将目录中所有数据都进行传输备份(可以包含已经备份过的数据)
增量:将目录中新增的数据进行传输备份(可以不用包含已经备份的数据,提高数据传输效率)

rsync服务端搭建 rsync服务器_linux

②本地备份和异地备份

本地:相当于cp备份数据 将数据从一个目录备份到另一个目录(在一台主机上进行)
远程:相当于scp备份数据
scp命令用法:
scp -rp /oldboy/ 10.0.0.41:/ (r是递归 ,p是保持权限)

作用说明:

1)避免数据丢失或者损坏
2)将数据进行汇总管理(数据分析)

7.rsync的应用场景

rsync的数据同步模式
1.推: 所有主机推送本地数据至Rsync备份服务器,会导致数据同步缓慢(适合少量数据备份)

2.拉: rsync备份服务端拉取所有主机上的数据,会导致备份服务器开销大

3.大量服务器备份场景

4.异地备份实现思路

8.rsync 使用三种主要的数据传输方式

  1. 本地方式
  2. 远程方式
  3. 守护进程

本地传输方式

#本地拷贝数据命令
Local: rsync [OPTION…] SRC… [DEST]
#本地拷贝数据示例
[root@backup ~]# rsync -avz /etc/passwd /tmp/
rsync #备份命令(cp)
[options] #选项
SRC… #本地源文件
[DEST] #本地目标文件

远程传输方式

通过ssh通道传输数据,类似scp命令

#pull拉取数据命令
 Pull: rsync [OPTION…] [USER@]HOST:SRC… [DEST]
 #pull拉取数据示例
 [root@backup ~]# rsync -avz root@172.16.1.41:/etc/hostname ./ #拉取远程文件
 [root@backup ~]# rsync -avz root@172.16.1.41:/root/ /backup/ #拉取远程目录下的所有文件
 [root@backup ~]# rsync -avz root@172.16.1.41:/root /backup/ #拉取远程目录以及目录下的所有文件
 Pull #拉取, 下载
 rsync #备份命令
 [options] #选项
 [USER@] #目标主机的系统用户
 HOST #目主机IP地址或域名
 SRC… #目标主机源文件
 [DEST] #下载至本地哪个位置
 #push推送数据命令
 Push: rsync [OPTION…] SRC… [USER@]HOST:DEST
 #push推送数据示例
 rsync -avz /backup/2018-10-01 root@172.16.1.41:/tmp/
 Push #推送, 上传
 rsync #备份命令
 [options] #选项
 SRC… #本地源文件
 [USER@] #目标主机的系统用户
 HOST #目主机IP地址或域名
 [DEST] #目标对应位置

💗 rsync借助SSH协议同步数据存在的缺陷

1.使用系统用户(不安全)
2.使用普通用户(会导致权限不足情况)

守护进程传输方式

rsync自身非常重要的功能(不使用系统用户,更加安全)

#pull拉取数据命令
 Pull: rsync [OPTION…] [USER@]HOST::SRC… [DEST]
 #1.拉取rsync备份服务的"backup模块"数据至本地/mnt目录
 [root@nfs01 ~]# rsync -avz rsync_backup@192.172.16.1.41::backup/ /mnt/ --password-file=/etc/rsync.password
 rsync #命令
 [OPTION…] #选项
 [USER@] #远程主机用户(虚拟用户)
 HOST:: #远程主机地址
 SRC… #远程主机模块(不是目录)
 [DEST] #将远程主机数据备份至本地什么位置
#push推送数据命令
 Push: rsync [OPTION…] SRC… [USER@]HOST::DEST
 #2.将本地/mnt目录推送至rsync备份服务器的backup模块
 [root@nfs01 ~]# rsync -avz /mnt/ rsync_backup@192.172.16.1.41::backup/ --password-file=/etc/rsync.password
 rsync #命令
 [OPTION…] #选项
 SRC… #远程主机模块(不是目录)
 [USER@] #远程主机用户(虚拟用户)
 HOST:: #远程主机地址
 [DEST] #将远程主机模块备份至本地什么位置

9.备份服务原理概念:

1)增量备份数据原理san
   利用算法实现增量备份
   1)根据checksum算法识别出增量数据,将增量数据进行传递
   2)根据文件属性信息变化(修改时间/大小),进行数据传递

2) rsync守护进程方式备份数据原理
   1)需要完成用户身份验证
   2)需要将用户身份进行转换 rsync 
   3)需要将备份数据属主和属组进行改变 rsync
  1. 原理图

补充说明:rsync软件三种工作方式
1)本地备份数据工作方式 (类似cp命令功能)
2)远程备份数据工作方式 (类似scp命令功能)
3)守护进程备份数据方式 (服务端/客户端)

💗备份服务器搭建过程

第一个历程:确认软件是否安装
yum install -y rsync
第二个历程:编写配置文件
rpm -qc rsync                              #查找rsync服务的配置文件路径
cp /etc/rsyncd.conf /etc/rsyncd.conf.bak01 #首先配置一份原配置文件
vim /etc/rsyncd.conf                       #vim编译器进行编辑
配置文件内容:
uid = rsync                        --- 指定转换用户身份/备份目录管理用户
    gid = rsync                        --- 指定转换用户组身份/备份目录管理用户组
    port = 873                         --- 指定服务端口
    fake super = yes                   --- 是否伪装成一个超级用户 (rsync) 
                                           保证文件权限信息不变/不再显示chgrp命令错误提示	
    use chroot = no                    --- 实现远程传输安全配置
    max connections = 200              --- 最大连接数
    timeout = 300                      --- 连接超时时间
    pid file = /var/run/rsyncd.pid     --- 记录服务进程号码  只有服务启动才会有进程文件
    lock file = /var/run/rsync.lock    --- 控制最大连接数量
    log file = /var/log/rsyncd.log     --- rsync备份服务日志文件
    ignore errors                      --- 忽略错误功能 保证传输数据效率
    read only = false                  --- 针对于备份目录是否是只读 
    list = false                       --- 不能列出模块信息
    hosts allow = 172.16.1.0/24        --- 允许哪个主机地址或者网段可以和备份服务器建立连接 (白名单)
    hosts deny = 0.0.0.0/32            --- 拒绝哪个主机地址或者网段可以和备份服务器建立连接 (黑名单)
    auth users = rsync_backup          --- 指定认证用户
    secrets file = /etc/rsync.password --- 指定认证密码文件
    [backup]                           --- 模块名称
    comment = "backup dir by oldboy"   --- 模块注释说明
    path = /backup                     --- 指定备份目录路径

操作

uid = rsync
 gid = rsync
 port = 873
 fake super = yes
 use chroot = no
 max connections = 200
 timeout = 600
 ignore errors
 read only = false
 list = false
 auth users = rsync_backup
 secrets file = /etc/rsync.passwd
 log file = /var/log/rsyncd.log
 #####################################
 [backup]
 comment = welcome to oldboyedu backup!
 path = /backup
第三个历程 :创建备份目录管理用户
创建一个虚拟用户
useradd -M -s /sbin/nologin  rsync  # -M 不创建家目录 -s 指定shell环境(第一种方法创建)
useradd -M -r rsync                 # -r 创建系统用户(第二种方法创建)
id rsync                            # 查看用户是否创建成功
id=1042(rsync) gid=1046(rsync) groups=1046(rsync)
第四个历程:创建一个备份数据目录
mkdir /backup                 #创建接受备份数据目录
	chown rsync.rsync /backup     #服务端用虚拟用户rsync管理rsync服务
第五个历程:创建一个访问认证文件
> vim /etc/rsync.password         #创建一个访问认证文件
> rsync_backup:1                  #格式=认证用户名称:密码
> chmod 600 /etc/rsync.password   #修改认证文件的权限为600
第六个历程重启服务,并将rsync加入开机自启动
systemctl start rsyncd                      #重启rsyncd服务
>  systemctl enable rsyncd                  #下次开机自启rsyncd服务
第七个历程:启动备份服务程序
systemctl start rsyncd     #重启服务
netstat -lntup|grep rsync  #查看rsync服务的端口
    tcp        0      0 0.0.0.0:873             0.0.0.0:*               LISTEN      9114/rsync          
    tcp6       0      0 :::873                  :::*                    LISTEN      9114/rsync

💗客户端配置

Rsync客户端仅需配置虚拟用户的密码,并授权为600安全权限

方式一:适合终端执行指定用户密码文件
 [root@nfs01 ~]# yum install rsync -y
 [root@nfs01 ~]# echo “1” > /etc/rsync.pass
 [root@nfs01 ~]# chmod 600 /etc/rsync.pass
 方式二:脚本中使用,强烈推荐方式
 [root@nfs01 ~]# export RSYNC_PASSWORD=1

10.备份企业应用:

1)备份服务多模块配置
需求:将开发人员 运维人员 数据库人员备份数据进行隔离
操作说明:
第一个历程:修改配置文件,添加多个模块信息

[sa_backup]
 comment = “backup dir by oldboy”
 path = /sa_backup
 [dev_backup]
 comment = “backup dir by oldboy”
 path = /dev_backup
第二个历程:创建模块对应目录信息
   mkdir /sa_backup  /dev_backup
   chown rsync.rsync  /sa_backup  /dev_backup
   
   第三个历程:重启服务程序
   systemctl restart rsyncd 
   
2)备份服务模块目录中如何创建子目录
   需求:将运维人员oldboy01数据 和 oldboy02数据进行区分
         将不同主机数据进行区分
   操作说明:
   rsync -avz /etc/hosts  rsync_backup@172.16.1.41::sa_backup/172.16.1.31/
   PS: 默认不支持创建多级目录

3)实现排除指定数据信息进行备份
   环境准备:
   mkdir oldboy{01..03}
   touch oldboy{01..03}/{a..c}.txt
   ├── oldboy01
   │?? ├── a.txt
   │?? ├── b.txt
   │?? └── c.txt
   ├── oldboy02
   │?? ├── a.txt
   │?? ├── b.txt
   │?? └── c.txt
   └── oldboy03
       ├── a.txt
       ├── b.txt
       └── c.txt
	   
   需求1:不想让oldboy01中的,a.txt文件进行备份
   --exclude   --- 排除指定数据不要进行传输同步
   rsync -avz /oldboy/ --exclude=oldboy01/a.txt --exclude=oldboy02/b.txt --exclude=oldboy03/c.txt  rsync_backup@172.16.1.41::sa_backup

   需求2:需要排除多个文件或者目录数据信息时
   --exclude-from   --- 加载一个文件可以实现排除多个数据信息
   第一个历程:编写一个排除文件
   oldboy01/a.txt
   oldboy02/b.txt
   oldboy03/c.txt
   PS:排除数据信息写成相对路径, 相对于传输目录而言
   
   第二个历程:执行排除数据命令
   rsync -avz /oldboy/ --exclude-from=/opt/exlude_file.txt  rsync_backup@172.16.1.41::sa_backup

4)备份数据采用无差异同步数据 (慎用)
   实现客户端和服务端数据一致
   rsync -avz /oldboy/ --delete rsync_backup@172.16.1.41::sa_backup
   意义:保证存储服务器用户数据信息和备份器数据信息高度一致
   
5)实现免交互自动备份数据功能
   定时任务/实时同步
   客户端操作:
   第一个历程:创建密码文件
   vim /etc/rsync.password
   oldboy123
   chmod 600 /etc/rsync.password
   
   第二个历程:进行免密码传输数据测试
   rsync -avz /oldboy/ rsync_backup@172.16.1.41::sa_backup --password-file=/etc/rsync.password	   
   ============================================================================================	
   思考问题:
   远程模式如何实现免交互传输数据
   ============================================================================================

	
6)实现数据备份访问控制功能
   hosts allow = 172.16.1.0/24    白名单:允许哪些主机或网段进行传输
   hosts deny = 0.0.0.0/32        黑名单:拒绝内些主机或网段进行传输
   
   访问控制原理:
   参见图示:
     
   企业应用: 只是选择一种名单即可, 不用白名单和黑名单同时存在
   ============================================================================================	 
   备份范围全局配置和局部配置:
   全局配置:配置文件中模块以外配置称为全局配置
             影响所有模块功能
   局部配置:配置文件中模块以内配置称为局部配置
             只是影响指定模块功能 局部配置优先于全局配置
   ============================================================================================		 


7)数据传输限速功能
   开发人员(家里)  --- 互联网 -电信/联通/移动 100M- 路由器  ---- 网站备份服务器
   网站用户          --- 互联网                               ---- web服务器
   --bwlimit=KBps          limit socket I/O bandwidth 

==============================================================================================	
补充:配置文件中list参数
当list参数配置为true时,客户端可以获取服务端所有模块列表信息
# rsync rsync_backup@172.16.1.41::
sa_backup      	"oldboy"
dev_backup     	"oldgirl"

11.Rsync服务常见报错问题汇总讲解:

1. rsync服务端开启的iptables防火墙 【客户端的错误】 No route to host 【错误演示过程】 [root@nfs01 tmp]# rsync -avz /etc/hosts
rsync_backup@172.16.1.41::backup rsync: failed to connect to
 172.16.1.41: No route to host (113) rsync error: error in socket IO (code 10) at clientserver.c(124) [sender=3.0.6] 【异常问题解决】
 关闭rsync服务端的防火墙服务(iptables) [root@backup mnt]# /etc/init.d/iptables
 stop iptables: Setting chains to policy ACCEPT: filter [
 OK ] iptables: Flushing firewall rules: [
 OK ] iptables: Unloading modules: [
 OK ] [root@backup mnt]# /etc/init.d/iptables status iptables:
 Firewall is not running.
2. rsync客户端执行rsync命令错误
【客户端的错误】 The remote path must start with a module name not a /
 【错误演示过程】 [root@nfs01 tmp]# rsync -avz /etc/hosts
 rsync_backup@172.16.1.41::/backup ERROR: The remote path must start
 with a module name not a / rsync error: error starting
 client-server protocol (code 5) at main.c(1503) [sender=3.0.6]
 【异常问题解决】 rsync命令语法理解错误,::/backup是错误的语法,应该为::backup(rsync模块)
3. rsync服务认证用户失败
【客户端的错误】 auth failed on module oldboy 【错误演示过程】 [root@nfs01
 tmp]# rsync -avz /etc/hosts rsync_backup@172.16.1.41::backup
 Password: @ERROR: auth failed on module backup rsync error:
 error starting client-server protocol (code 5) at main.c(1503)
 [sender=3.0.6] 【异常问题解决】1. 密码真的输入错误,用户名真的错误
2. secrets file = /etc/rsync.password指定的密码文件和实际密码文件名称不一致 信息复制粘贴
3. /etc/rsync.password文件权限不是600
4. rsync_backup:123456 密码配置文件后面注意不要有空格
 如何看出文件结尾空格信息: 方法一:在vim编辑中查看 底行模式—:set list 方法二:在cat命令中查看 [root@backup ~]# cat -A /etc/rsync.password
 rsync_backup:oldboy123 $5. rsync客户端密码文件中只输入密码信息即可,不要输入虚拟认证用户名称
4. rsync服务位置模块错误
【客户端的错误】 Unknown module ‘backup’ 【错误演示过程】 [root@nfs01
 tmp]# rsync -avz /etc/hosts rsync_backup@172.16.1.41::backup
 @ERROR: Unknown module ‘backup’ rsync error: error starting
 client-server protocol (code 5) at main.c(1503) [sender=3.0.6]
 【异常问题解决】1. /etc/rsyncd.conf配置文件模块名称书写错误
5. rsync服务权限阻止问题
【客户端的错误】 Permission denied 【错误演示过程】 [root@nfs01 tmp]# rsync
 -avz /etc/hosts rsync_backup@172.16.1.41::backup Password: sending incremental file list hosts rsync: mkstemp
 “.hosts.5z3AOA” (in backup) failed: Permission denied (13) sent
 196 bytes received 27 bytes 63.71 bytes/sec total size is 349
 speedup is 1.57 rsync error: some files/attrs were not transferred
 (see previous errors) (code 23) at main.c(1039) [sender=3.0.6]
 【异常问题解决】1. 备份目录的属主和属组不正确,不是rsync
2. 备份目录的权限不正确,不是755
6. rsync服务备份目录异常
【客户端的错误】 chdir failed 【错误演示过程】 [root@nfs01 tmp]# rsync
 -avz /etc/hosts rsync_backup@172.16.1.41::backup Password: @ERROR: chdir failed rsync error: error starting client-server
 protocol (code 5) at main.c(1503) [sender=3.0.6] 【异常问题解决】1. 备份存储目录没有建立
2. 建立的备份存储目录和配置文件定义不一致 说明:如果没有备份存储目录
7. rsync服务无效用户信息
【客户端的错误】 invalid uid rsync 【错误演示过程】 [root@nfs01 tmp]#
 rsync -avz /etc/hosts rsync_backup@172.16.1.41::backup Password:
 @ERROR: invalid uid rsync rsync error: error starting client-server
 protocol (code 5) at main.c(1503) [sender=3.0.6] 【异常问题解决】
 rsync服务对应rsync虚拟用户不存在了8. 客户端已经配置了密码文件,但免秘钥登录方式,依旧需要输入密码
【客户端的错误】 password file must not be other-accessible 【错误演示过程】
 [root@nfs01 tmp]# rsync -avz /etc/hosts
 rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password
 password file must not be other-accessible continuing without
 password file Password: sending incremental file list sent
 26 bytes received 8 bytes 5.23 bytes/sec total size is 349
 speedup is 10.26 【异常问题解决】 rsync客户端的秘钥文件也必须是600权限9. rsync客户端连接慢问题
【错误日志信息】 名称或者域名 — IP dns解析 错误日志输出 IP — 名称或者域名
 反向dns解析 2017/03/08 20:14:43 [3422] params.c:Parameter() - Ignoring
 badly formed line in configuration file: ignore errors 2017/03/08
 20:14:43 [3422] name lookup failed for 172.16.1.31: Name or service
 not known 2017/03/08 20:14:43 [3422] connect from UNKNOWN
 (172.16.1.31) 2017/03/08 20:14:43 [3422] rsync to backup/ from
 rsync_backup@unknown (172.16.1.31) 2017/03/08 20:14:43 [3422]
 receiving file list 2017/03/08 20:14:43 [3422] sent 76 bytes
 received 83 bytes total size 349 正确日志输出 2017/03/08 20:16:45
 [3443] params.c:Parameter() - Ignoring badly formed line in
 configuration file: ignore errors 2017/03/08 20:16:45 [3443]
 connect from nfs01 (172.16.1.31) 2017/03/08 20:16:45 [3443] rsync
 to backup/ from rsync_backup@nfs02 (172.16.1.31) 2017/03/08
 20:16:45 [3443] receiving file list 2017/03/08 20:16:45 [3443] sent
 76 bytes received 83 bytes total size 349 【异常问题解决】
 查看日志进行分析,编写rsync服务端hosts解析文件10 rsync服务没有正确启动
【错误日志信息】 Connection refused (111) 【错误演示过程】
 [root@oldboy-muban ~]# rsync -avz /etc/hosts
 rsync_backup@172.16.1.41::backup rsync: failed to connect to
 172.16.1.41: Connection refused (111) rsync error: error in socket IO (code 10) at clientserver.c(124) [sender=3.0.6] 【异常问题解决】
 [root@oldboy-muban ~]# rsync --daemon [root@oldboy-muban ~]# ss
 -lntup |grep rsync tcp LISTEN 0 5 :::873 ::😗 users:((“rsync”,1434,5)) tcp
 LISTEN 0 5 *:873 :
 users:((“rsync”,1434,4)) [root@oldboy-muban ~]# rsync -avz
 /etc/hosts rsync_backup@172.16.1.41::backup Password: sending
 incremental file list hosts sent 196 bytes received 27 bytes
 49.56 bytes/sec total size is 349 speedup is 1.57