Linux文件镜像同步方案 工具rsync

什么是rsync

rsync(Remote Sync) 是开源的增量文件传输工具,可实现本机不同目录之间的同步,也可以在不同主机之间进行同步,实现全量备份与增量备份,用于架构集中备份或异地备份。 官网:https://rsync.samba.org

rsync特性

可以镜像整个目录;
可以保持原来文件的权限、时间、软硬链接等属性;
文件传输效率高;
支持匿名传输。

安装rsync

yum install -y rsync

本机目录备份

rsync -zvrh /home/data /home/data.backup

远程目录备份

rsync -avz root@192.168.0.100:/home/data /home/data.backup

如果不想每次都输入密码,可设置linux密钥:

ssh-keygen
ssh-copy-id 192.168.0.100

rsync -avz 192.168.0.100:/home/data /home/data.backup

rsync命令的基本用法

格式:rsync 【选项】 源文件 目标文件

常见的选项:
-a,--archive 归档模式,以递归的方式传输文件,并且保持文件属性,等同于-rlptgoD
-r,–recursive 对子目录以递归模式处理
-l,--links 表示拷贝链接文件
-p , --perms 表示保持文件原有权限
-t , --times 表示保持文件原有时间
-g , --group 表示保持文件原有属用户组
-o , --owner 表示保持文件原有属主
-D , --devices 表示块设备文件信息
-z , --compress 表示压缩传输
-H 表示硬连接文件
-A 保留ACL属性信息
-P 显示传输进度
--delete 删除那些目标位置有而原始位置没有的文件

 

rsync与crontab inotify等工具一起使用,可实现定时或实时同步。

 

大数据高吞吐量的分布式消息队列系统 Kafka SpringBoot集成API文档工具Swagger
微信公众号