需求来源:
A服务器(centos 64):192.168.1.222
需要同步目录:/opt/tools
B电脑(win7 64):192.168.1.123
现在需要将A服务器上tools目录下的内容同步到B电脑。步骤如下;
一、安装服务器端rsync
yum -y install rsync。安装成功后,通过rmp -ql rsync-3.0.6-4.el5_7.1,可查看安装到哪里了
二、配置服务器端rsync
1、新建并配置/etc/rsyncd.conf
rsyncd.conf的参数写在上边就是全局参数和写在模块里的就是模块参数
#vi /etc/rsyncd.conf
全局参数
uid = root #运行RSYNC守护进程的用户
gid = root #运行RSYNC守护进程的组
use chroot = no #不使用chroot
max connections = 4 # 最大连接数为4
strict modes =yes #是否检查口令文件的权限
port = 873 #默认端口873
[tools] #这里是认证的模块名,在client端需要指定
path = /opt/tools/ #需要做镜像的目录,不可缺少!
comment = This is a test #这个模块的注释信息
ignore errors #可以忽略一些无关的IO错误
read only = yes # 只读
list = no #不允许列文件
auth users = narkii #认证的用户名,如果没有这行则表明是匿名,此用户与系统无关
secrets file = /etc/rsync.pass #密码和用户名对比表,密码文件自己生成
hosts allow = 192.168.1.123 #允许主机
hosts deny = 0.0.0.0/0 # 禁止主机
#transfer logging = yes================================================
uid = root
gid = root
use chroot = no
max connections = 4
#strict modes =yes
port = 873
[tools]
path = /opt/tools/
comment = This is a test
ignore errors
read only = yes
list = no
auth users = narkii
hosts allow = 192.168.1.123
secrets file = /etc/rsync.pass
2、新建并配置 /etc/rsync.pass
narkii:123456
保存后,记得改一下权限
chmod 600 /etc/rsync.pass
3、配置rsync
#vi /etc/xinetd.d/rsync
把原来的YES改成NO
service rsync
{
disable = no
socket_type = stream
wait = no
user = root
server = /usr/bin/rsync
server_args = --daemon
log_on_failure += USERID
}4、启动rsync
servie xinetd restart
chkconfig --list #检查是否启动成功
二、客户端配置
二、配置客户端
为了在Windows环境使用rsync工具,我们需要去下载cwRsync工具,这是一个rsync for windows的版本。
下载安装完成之后的目录结构类似下图所示:
现在我们可以在Windows环境下运行rsync工具了,举例使用下面的命令连接服务器并开始备份目录和文件:
1、rsync -vzrtopg --progress --delete narkii@192.168.1.222::tools .\bak
2、rsync -vzrtopg --progress --delete narkii@192.168.1.222::tools /cygdrive/e/tools
3、rsync -vzrtopg --progress --delete narkii@192.168.1.222::tools /cygdrive/e/tools --password-file=/cygdrive/e/rsync.pas
三、常见问题处理
1、rsyncd[6491]: rsync: unable to open configuration file "/etc/rsyncd.conf": Permission denied (13)
解决办法:关闭一下 selinux