rsync(remote synchronize )是一个远程文件同步工具,支持多个操作系统,用于在多台服务器之间同步目录和文件。rsync采用增量传输文件的方法,只传输新文件和修改过的文件,而不是每次都全部传输,效率比较高。
rsync有以下特点:
1)支持目录和文件的上传和下载功能;
2)可以镜像保存整个目录树和文件系统;
3)传输效率高,只传输新增和修改过的文件。
一、安装软件包
rsync的客户端和服务器软件的安装包都是rsync。
yum -y install rsync
二、修改系统配置
1、关闭SELINUX
修改/etc/selinux/config文件,把SELINUX参数的值改为disabled。
SELINUX =disabled
重启linux系统或执行 setenforce 0 使修改马上生效。
2、开通防火墙端口
rsync缺省的端口是873,您可以修改配置文件中的端口。
1)防火墙开通873端口。
firewall-cmd --zone=public --add-port=873/tcp --permanent
2)重启防火墙。
systemctl restart firewalld
3、启用rsyncd服务
rsync的服务名是rsyncd。
1)启动rsyncd服务。
systemctl start rsyncd
2)把rsyncd服务设置为开机自启动。
systemctl enable rsyncd
三、配置rsync
接下来我用示例来显示文件同步的配置和使用,需求如下:
1)我只用一台服务器来测试,IP地址是192.168.1.129,既是服务器,也是客户端;
2)服务端的目录是/tmp/docs;
3)我将创建两个客户端用户:client1和client2;
4)客户端client1的目录是/tmp/docs1;
5)客户端client2的目录是/tmp/docs2;
6)客户端client1把/tmp/docs1目录中的文件发送给服务端;
7)客户端client2从服务端下载文