用rsync进行文件同步

实现将文件从10.0.80.194/rsync/www/的文件同步到/10.0.80.206/rsync/www/下
10.0.80.206为服务端,提供服务
10.0.80.194为客户端,将文件写入服务端

在两台机器上安装rysnc
yum install rsync



1.先配置服务端10.0.80.206,vi /etc/rsyncd.con
uid = nobody#此处可修改成实际用户
gid = nobody#此处可修改成实际用户

use chroot = yes
max connections = 4
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log

[downloads]
path = /rsync/www/
ignore errors
read only = false
list = false
hosts allow =10.0.80.206/255.255.255.240
hosts deny = 0.0.0.0/32
auth users = backup
secrets file = /etc/rsyncd.pwd


uid和gid指明了运行身份,chroot表示连接后自动切换目录,read only=false是允许别的客户端向本机的服务器端上传。host allow和deny是限制连接地址。auth user是认证用户名,secrets file = /etc/rsyncd.pwd是表示认证用户名的时候到这里读取密码。
2.编写密码文件,vi /erc/rsyncd.pwd
backup:123456


3.启动服务端程序,服务端工作完成。
/usr/bin/rsync --daemon
4.在客户端服务器10.0.80.194上编写客户端脚本,vi /root/rsync.sh
rsync -vrtL --progress  /rsync/www/*  [email protected]::downloads --password-file=/root/rsync.pwd


-v参数表示显示输出结果,r表示保持属性,t表示保持时间,L表示软link视作普通文件。
–delete 是指如果Server端删除了一文件,那客户端也相应把这一文件删除,保持真正的一致
5.创建客户端的密码文件:vi /root/rsync.pwd
123456
注意:客户端的密码脚本不带用户名。
设置密码文件权限700:(权限不对会登陆不上)
6.运行/root/rsync.sh实现文件同步,实际中常常使用定时任务来同步

文件的添加、修改、删除都会被同步
试验rsync的时候应该非常小心,因为很可能一不小心就将大量数据发送到它们本不该出现的地方。 verbose(-v)与dry-run(-n)在你试验的时候将会十分的有用,verbose能让你看到修改的结果,dry-run就是不对文件进行真正的修改主,只产生结果信息。
注意: 文件夹参数后面有/与没有/的区别。如果源目录有/表示当前目录下的所有文件 ,如果没有/表示当前文件夹也包括其中
7.不要忘了开防火墙端口

参考文件
http://www.cszhi.com/20120312/rsync-simple.html
http://www.heartdemon.com/post/149.html
http://junnan.org/blog/586

你可能感兴趣的:(rsync)