rsync简介:
rsync是可以实现增量备份的工具。配合任务计划,rsync能实现定时或间隔同步,配合inotify或sersync,可以实现触发式的实时同步。
运行的模式: C/S
端口号:873
rsync - 快速,通用,可实现全量和增量的远程(和本地)文件复制工具
rsync优缺点:
优点
1.可以增量备份
2.可以限速进行数据的备份或恢复操作
3.远程SHELL通道模式还可以加密(SSH)传输
4.支持匿名认证(无需系统用户)的进程模式传输,可以实现方便安全的进行数据备份和镜像
5.保持原文件或目录的权限、时间、软硬链接、属主、组等所有属性均不改变 –p
6.可以有排除指定文件或目录同步的功能,相当于打包命令tar的排除功能。(–exclude)
缺点
1.大量小文件时进行同步备份,比对的时间较长,有时候会导致rsync进程停止运行或者进程挂起; 解决方法: a、打包后再同步; b、drbd(文件系统同步复制block)
2. 同步大文件,比如:10G这样的,有时也会出现问题,导致rsync进程中断,未完整同步前,是隐藏文件,但是会占用磁盘空间(ls -al查看)。直到同步完成后,将隐藏文件改成正常文件。而且,每中断一次,生成一个隐藏文件
应用场景
rsync三种工作模式
Rsync有三种传输模式,分别是本地方式(cp)、远程方式(scp)、守护进程
rsync部署:
分两台:
centos7.7-41 10.0.0.41 — S
centos7.7-42 10.0.0.42 — C
1.先查看是否有安装rsync
rpm -qa rsync #如果没有的话 直接yum -y install rsync
2.编辑rsync的配置文件
mkdir -p /data
useradd rsync -s /sbin/nologin -M #创建一个rsync的虚拟用户,只被程序使用
chown -R rsync.rsync /data/
echo "rsync_backup:123456" >/etc/rsync.password
chmod 600 /etc/rsync.password
vim /etc/rsyncd.conf
systemctl restart rsyncd.service
systemctl status rsyncd.service
cat /etc/rsyncd.conf
##全局配置
uid = root #用户
gid = root #用户组
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 #日志文件,显示出错信息
##模块配置
[backup] #模块名称
path = /data #模块对应的位置(路径)
ignore errors #忽略错误程序
read only = false #是否只读
list = false #是否可以列表
hosts allow = 10.0.0.0/24 #准许访问rsync服务器的客户范围
#hosts deny = 0.0.0.0/32 #禁止访问rsync服务器的客户范围
auth users = rsync_backup #不存在的用户;只用于认证
secrets file = /etc/rsync.password #设置进行连接认证的密匙文件
3.编辑完成以后重启服务
systemctl restart rsyncd.service
4.客户端配置
echo "123456">/etc/rsync.password
chmod 600 /etc/rsync.password
5.开始实现 推拉
rsync -avz 文件 [email protected]::backup --password-file=/etc/rsync.password #这是推送
rsync -avz [email protected]::backup --password-file=/etc/rsync.password /tmp #这是拉取==获取