1.1 什么是rsync软件
rsync软件是开源的、快速的、多功能的、可实现全量及增量的本地或远程数据同步备份的优秀工具,并且可以不进行改变原有数据的属性信息,实现数据的备份迁移特性。
Rsync软件食用与uinx/linux/windows等多种操作系统平台
1.2 概念
全量复制:一次性复制
增量复制:只把增加的复制过去(别人家没有的东西复制过去)
1.3 使用场景
1. yum总源和分源之前的同步
2. 批量小文件的同步
3. 增量同步(nginx配置目录config.d 等)
1.4 Rsync的特性如下(7个特性信息说明):
01. 支持拷贝普通文件与特殊文件如链接文件,设备等。
02. 可以有排除指定文件或目录同步的功能,相当于打包命令tar的排除功能。
tar zcvf backup_1.tar.gz /opt/data -exclude=oldboy
说明:在打包/opt/data时就排除了oldboy命名的目录和文件。
03. 可以做到保持原文件或目录的权限、时间(访问时间 修改时间 创建时间)、软硬链接、属主、组等所有属性均不改变-p。
04. 可实现增量同步,既只同步发生变化的数据,因此数据传输效率很高(tar -N)。
将备份/home 目录自 2008-01-29 以来修改过的文件
tar -N 2008-01-29 -zcvf /backups/inc-backup_$(date +%F).tar.gz /home
将备份 /home 目录昨天以来修改过的文件
tar -N $(date -d yesterday "+%F") -zcvf /backups/inc-backup_$(date +%F).tar.gz /home
添加文件到已经打包的文件
tar -rf all.tar *.gif
说明:这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思。
05. 可以使用rcp,rsh,ssh等方式来配合进行隧道加密传输文件(rsync本身不对数据加密)
06. 可以通过socket(进程方式)传输文件和数据(服务端和客户端) *****。重点掌握
07. 支持匿名的或认证(无需系统用户)的进程模式传输,可实现方便安全的进行数据备份及镜像
1.5 三种同步方式详解
1.5.1 本地同步方式
例子:rsync /etc/hosts /tmp
1.5.2 通过shell方式,隧道模式
1.5.2.1 put:推送
例子:rsync -rp /etc/hosts root@172.16.1.31:/tmp
1.5.2.2 get:拉取
例子:rsync -rp root@172.16.1.31 /etc/hosts /opt
1.5.3 守护进程,密码认证
拉格式:rsync -avz rsync_backup@172.16.1.41::backup/文件 到哪里
推格式:rsync -avz /etc rsync_backup@172.16.1.41::backup
+++--password-file=/etc/rsync.password 免密码
![1620889867581014.png image.png]()
参数扩展
![1620889939662047.png image.png]()
![1620889951675266.png image.png]()
![1620889993957678.png image.png]()