rsync➕rsync同步

2.rsync+rsync同步
问题
采用rsync+SSH的远程同步时,使用起来是最简单的,但是目标用户也被允许SSH登录到远程主机的Shell环境。在某些情况下,企业会希望只提供需要认证的同步目录资源,但并不希望提供远程登录,这时候就可以采用rsync+rsync同步。
沿用练习一,需要完成的配置任务如下:
1)在rsync源端将/usr/src 目录发布为同步资源:共享名为tools,仅允许用户 ruser 以密码 pwd123 访问
2)在rsync操作端测试 rsync+rsync下行同步
方案
使用两台RHEL6虚拟机,其中一台为rsync同步提供源目录(192.168.4.5),另外一台作为rsync同步操作的发起端(192.168.4.205),如图-2所示。
在这里插入图片描述
图-2
rsync工具也可以作为服务器使用,独立执行rsync --daemon即可;或者,也是推荐的做法,可以作为临时服务交给xinetd超级服务器来管理。rsync服务端提供同步目录资源时,配置和提供方式类似于Samba共享。
使用rsync与rsync服务端之间同步时,用法如下:
1)下行:rsync [选项…] user@host::共享名 本地目录
2)上行:rsync [选项…] 本地目录 user@host::共享名
步骤
实现此案例需要按照如下步骤进行。
步骤一: 配置rsync服务端,发布tools同步资源
1)建立同步账号文件
[root@svr5 ~]# vim /etc/rsyncd_users.db
ruser:pwd123 //用户名:密码,每行一个用户
othername:123456

[root@svr5 ~]# chmod 600 /etc/rsyncd_users.db //严格权限,否则同步会失败
2)建立 /etc/rsyncd.conf 共享设置
[root@svr5 ~]# vim /etc/rsyncd.conf
[tools] //定义共享名
path = /usr/src //被共享的目录位置
comment = Rsync Share Test //同步资源说明
read only = yes //只读
dont compress = *.gz *.bz2 *.tgz *.zip //同步时不再压缩的文档类型
auth users = ruser //允许谁访问
secrets file = /etc/rsyncd_users.db //指定账号文件的路径
在上述配置文件中,若不添加最后两行认证配置,则默认以匿名方式提供。
3)启用 rsync --daemon 服务端
[root@svr5 ~]# du -sh /usr/src/ //确认待发布的同步目录
163M /usr/src/

[root@svr5 ~]# yum -y install xinetd
[root@svr5 ~]# chkconfig rsync on //打开rsync服务开关
[root@svr5 ~]# chkconfig xinetd on
[root@svr5 ~]# service xinetd restart //通过xinetd启动
步骤二: rsync + rsync下行同步测试
1)查看及列表同步资源
查看远程主机提供了哪些同步资源:
[root@pc205 ~]# rsync 192.168.4.5::
tools Rsync Share Test //共享名、共享说明
列出指定同步资源下的文档:
[root@pc205 ~]# rsync [email protected]::tools //浏览共享
Password: //验证ruser用户的口令
drwxr-xr-x 4096 2009/10/01 22:58:39 debug
drwxr-xr-x 4096 2009/10/01 22:58:39 kernels
… …
2)rsync下行同步
[root@pc205 ~]# rsync -avz [email protected]::tools/ /root/mysrc/
//下行同步,删除多余文件
Password: //验证密码pwd123
… …
sent 271848 bytes received 37119880 bytes 598267.65 bytes/sec
total size is 130075707 speedup is 3.48

[root@pc205 ~]# du -sh /root/mysrc/ //确认同步结果
163M /root/mysrc/

发布了121 篇原创文章 · 获赞 69 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/iT__SuperMan/article/details/90581962