1、背景

1)        一个作为服务器端:VM3(IP: 3.9.8.151)

2)        一个作为客户端:VM2(IP: 3.9.8.157)

3)        服务器端和客户端网络能够互相ping通

4)        服务器端和客户端都已安装 rsync

要求:将VM3的/root/backup/目录下的所有文件 复制到 VM2 的/root/test/目录下。

2、操作

1)        用ping命令检测服务器端和客户端的网络互通性

VM3  ping  VM2 成功

  

VM2  ping  VM3 成功

  

VM2 和 VM3 网络互通

2)        服务端VM3新建并修改rsync配置文件

# vim /etc/rsyncd.conf

  

Uid = nobody

Gid = nobody

Use chroot = no

Max connections = 4

Pid file = /var/run/rsyncd.pid

Lock file = /var/run/rsyncd.lock

Log file = /var/log/rsyncd.log

[cms]

Path = /root/backup

Read only = true

List = false

Auth users = root

Secrets file = /etc/rsyncd.secrets

该文件是由一个或多个模块结构组成。一个模块定义以方括弧中的模块名开始,直到下一个模块定义开始或者文件结束,模块中包含格式为name = value的参数定义。每个模块其实就对应需要备份的一个目录树。

全局参数

Uid: 该选项指定当该模块传输文件时守护进程应该具有的uid,配合gid选项使用可以确定哪些可以访问怎么样的文件权限,默认值是"nobody"。

Gid: 该选项指定当该模块传输文件时守护进程应该具有的gid。默认值为"nobody"。

Use chroot: 如果"use chroot"指定为true,那么rsync在传输文件以前首先chroot到path参数所指定的目录下。这样做的原因是实现额外的安全防护,但是缺点是需要以roots权限,并且不能备份指向外部的符号连接所指向的目录文件。默认情况下chroot值为true。

Max connection: 指定该模块的最大并发连接数量以保护服务器,超过限制的连接请求将被告知随后再试。默认值是0,也就是没有限制。

pid file:指定rsync的pid文件。

Lock file: 指定支持max connections参数的锁文件,默认值是/var/run/rsyncd.lock

log file: 指定rsync的日志文件,而不将日志发送给syslog。

模块参数

Cms: 模块名,名字可以随意取,之后的客户端rsync命令将调用这个名字。

path: 指定该模块的供备份的目录树路径,该参数是必须指定的.

Read only: 该选项设定是否允许客户上载文件。如果为true那么任何上载请求都会失败,如果为false并且服务器目录读写权限允许那么上载是允许的。默认值为true。

List: 该选项设定当客户请求可以使用的模块列表时,该模块是否应该被列出。如果设置该选项为false,可以创建隐藏的模块。默认值是true。

Auth users:该选项指定由空格或逗号分隔的用户名列表,只有这些用户才允许连接该模块。这里的用户和系统用户没有任何关系。如果"auth users"被设置,那么客户端发出对该模块的连接请求以后会被rsync请求challenged进行验证身份这里使用的challenge/response认证协议。用户的名和密码以明文方式存放在"secrets file"选项指定的文件中。默认情况下无需密码就可以连接模块(也就是匿名方式)。

Secrets file: 该选项指定一个包含定义用户名:密码对的文件。只有在"auth users"被定义时,该文件才有作用。文件每行包含一个username:passwd对。一般来说密码最好不要超过8个字符。没有默认的secures file名,需要限式指定一个。(例如:/etc/rsyncd.secrets)

以上参照:http://blog.csdn.net/xujingzhong0077/article/details/51993514

注意:设置后要测试配置的目录是否存在,如要确认/var/run/目录,/var/log/目录,/root/backup/目录。/etc/rsyncd.secrets将会在下一步配置

3)        服务端VM3新建并修改rsync配置文件

# vim /etc/rsyncd.secrets

  

Root:redhat

以 用户名:密码 的格式。这个是服务器端的认证用户名密码。

  

4)      服务端VM3  修改/etc/rsyncd.secrets权限,只能是root用户可读写

# chmod 600 /etc/rsyncd.secrets

  

  

5)    服务端VM3    以daemon方式启动rsync

# rsync –daemon

  

6)        服务端VM3检查端口,以及服务

# ps –ef | grep rsync

检查服务是否以daemon方式启动,若不是,kill掉进程,重新以daemon方式启动

  

# netstat –ntlp

检查服务启动后,是否有监听873端口,端口873是rsync的默认端口。

  

# service iptables stop

关闭防火墙

或者

# vim /etc/sysconfig/iptables

添加

-A INPUT -m state –state NEW -m tcp -p tcp –dport 873 -j ACCEPT

允许873端口通过防火墙

# service iptables restart

重启防火墙

查看/etc/rsyncd.secrets 文件权限是不是只用root用户可读写

  

以上配置及检查完毕,则服务端就可以了,等待客户端连接,拷贝文件。

7)        客户端VM2 配置密码文件

# vim /etc/rsync.pass

Redhat

  

  

8)        客户端VM2 密码文件/etc/rsync.pass,修改权限,只能是root用户可读写

# chmod 600 /etc/rsync.pass

  

  

9)        客户端VM2 用命令连接服务端拷贝文件

# rsync –arvz –P root@3.9.8.151::cms /root/test/ --password-file=/etc/rsync.pass

  

最新文章

  1. 自定义view(二)
  2. css的权重
  3. 用户、角色、权限三者多对多用hibernate的一对多注解配置
  4. Android Services重点记录
  5. which和whereis 命令
  6. CentOS(四)--Linux系统的启动级别
  7. 经验之巧妙的应用Map
  8. HTML&CSS基础学习笔记1-简单网页中有哪些标签?
  9. (转)Java ConcurrentModificationException异常原因和解决方法
  10. 微信小程序框架探究和解析
  11. 财务平台亿级数据量毫秒级查询优化之elasticsearch原理解析
  12. Android Activity生命周期图解
  13. [LeetCode] Swim in Rising Water 在上升的水中游泳
  14. C# 反射及应用
  15. MongoDB硬件及开发标准规范
  16. filter(ele)过滤数组
  17. Tomcat 7.0安装与配置
  18. python技巧 使用值来排序一个字典
  19. 志强处理器结尾的ES、QS、正式版的区别
  20. Catalina.createDigester方法详细理解

热门文章

  1. 最小生成树 E - QS Network
  2. [kuangbin带你飞]专题四 最短路练习 G MPI Maelstrom
  3. postgresql 创建函数
  4. python列表可以加可以乘
  5. Yocto tips (17): Yocto License问题:restricted license not whitelisted in LICENSE_FLAGS_WHITELIST
  6. FZU 2168 防守阵地 I(公式推导)(经典)(中等)
  7. Android SnackBar:你值得拥有的信息提示控件
  8. UVa 11475 - Extend to Palindrome
  9. 大写金额换算器iOS版源码
  10. nodejs Yarn替代npm的包管理——快速、安全、可靠性高的依赖管理