系统环境:CentOS 6.3 rsync服务器
Windows Server 2003 R2 cwRsync客户端
IP地址分别为:10.1.4.44服务器、10.1.4.42客户端
实现目的:
cwRsync客户端每天凌晨02:30钟自动同步Rsync服务端/data/share目录中的数据到D:\data目录
所需软件包:
rsync-3.0.9.tar.gz cwRsync_4.0.5_Installer.zip
一、rsync服务器安装
rysnc的官方网站:可以从上面得到最新的版本。目前最新版是3.09。
[root@server ~]# tar xvf rsync-3.0.9.tar.gz
[root@server ~]# cd rsync-3.0.9
[root@server rsync-3.0.9]# ./configure --prefix=/usr
[root@server rsync-3.0.9]# make
[root@server rsync-3.0.9]# make install 注:在用源码包编译安装之前,您得安装gcc等编译开具才行
二、 rsync服务器的配置文件rsyncd.conf
rsync的主要有以下三个配置文件:
rsyncd.conf(主配置文件)
rsyncd.secrets(密码文件)
rsyncd.motd(rysnc服务器信息)
服务器配置文件(/etc/rsyncd/rsyncd.conf),该文件默认不存在,请创建:
[root@server etc]# mkdir rsyncd 注:在/etc目录下创建一个rsyncd的目录,我们用来存放rsyncd.conf 、rsyncd.secrets、rsyncd.mond文件
[root@server rsyncd]# touch rsyncd.conf 注:创建rsyncd.conf ,这是rsync服务器的配置文件
[root@server rsyncd]# touch rsyncd.secrets 注:创建rsyncd.secrets ,这是用户密码文件
[root@server rsyncd]# chmod 600 rsyncd.secrets 注:为了密码的安全性,我们把权限设为600
[root@server rsyncd]# ls -lh rsyncd.secrets
-rw------- 1 root root 12 9月 14 11:56 rsyncd.secrets
[root@server rsyncd]# touch rsyncd.motd
[root@server rsyncd]# ll
总用量 12
-rw-r--r-- 1 root root 643 9月 14 11:55 rsyncd.conf
-rw-r--r-- 1 root root 172 9月 14 11:58 rsyncd.motd
-rw------- 1 root root 12 9月 14 11:56 rsyncd.secrets
配置编辑: rsyncd.conf 、rsyncd.secrets 、rsyncd.motd 文件;
1、配置rsyncd.conf文件
rsyncd.conf 是rsync服务器主要配置文件,我们来个简单的示例:
备份服务器上的/data/share目录下所有文件,手动添加内容如下:
[root@server ~]# vim /etc/rsyncd/rsyncd.conf
# Distributed under the terms of the GNU General Public License v2
# Minimal configuration file for rsync daemon
# See rsync(1) and rsyncd.conf(5) man pages for help
# This line is required by the /etc/init.d/rsyncd script
pid file = /var/run/rsyncd.pid 注:告诉进程写到 /var/run/rsyncd.pid 文件中
port = 873 注:指定运行端口,默认是873,您可以自己指定
address = 10.1.4.44 注:指定服务器IP地址
#uid = nobody 注:服务器端传输文件时,要发哪个用户和用户组来执行,默认是nobody
#gid = nobody 注:服务器端传输文件时,要发哪个用户和用户组来执行,默认是nobody
uid = root
gid = root
use chroot = yes
read only = yes
#limit access to private LANs
hosts allow=10.1.4.0/255.255.255.0
hosts deny=*
max connections = 5 注:客户端最多连接数
motd file = /etc/rsyncd/rsyncd.motd
#This will give you a separate log file
#log file = /var/log/rsync.log
#This will log every file transferred - up to 85,000+ per user, per sync
#transfer logging = yes
log format = %t %a %m %f %b
syslog facility = local3
timeout = 300
[samba_data] 注:模块
path = /data/share 注:指定文件目录所在路径
list=no 注:list 意思是把rsync 服务器上提供同步数据的目录在服务器上模块是否显示列出来。默认是yes 。如果你不想列出来,就no ;如果是no是比较安全的,至少别人不知道你的服务器上提供了哪些目录。你自己知道就行了
ignore errors 注:忽略IO错误,详细的请查文档
auth users = root 注:认证用户是root ,是必须在服务器上存在的用户
secrets file = /etc/rsyncd/rsyncd.secrets 注:密码存在rsyncd.secrets文件里
注: 关于 auth users 是必须在服务器上存在的真实的系统用户,如果你想用多个用户,那就以,号隔开;比如 auth users = root , user1