Rsync服务器的配置




1.      rsync软件包安装好

2.       rsync服务器的配置文件/etc/rsyncd.conf (需要手工创建)

3.      rsync配置文件介绍,(见附件1)

全局参数:对整个rsync服务器生效,如果模块参数和全局参数冲突,针对冲突模块的模块参数生效

模块参数:定义需要通过rsync输出的目录定义的参数

下面是常见的全局配置参数,




Port:指定后台程序使用的端口号,默认为873。

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

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

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

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

motd file:" motd file" 参数用来指定一个消息文件,当客户连接服务器时该文件的内容显示给客户,默认是没有motd文件的。  

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

pid file:指定rsync的pid文件,通常指定为“/var/run/rsyncd.pid”。  

下面是常见的模块配置参数




主要是定义服务器哪个目录要被同步输出。其格式必须为“[module]”形式,这个名字就是在rsync 客户端看到的名字,其实有点象Samba服务器提供的共享名。而服务器真正同步的数据是通过 path 来指定的。

Comment:给模块指定一个描述,该描述连同模块名在客户连接得到模块列表时显示给客户。默认没有描述定义。  

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

read only :yes为只允许下载,no为可以下载和上传文件到服务器

exclude:用来指定多个由空格隔开的多个文件或目录(相对路径),将其添加到exclude列表中。这等同于在客户端命令中使用—exclude或----filter来指定某些文件或目录不下载或上传(既不可访问)

exclude from:指定一个包含exclude模式的定义的文件名,服务器从该文件中读取exclude列表定义,每个文件或目录需要占用一行 

include: 用来指定不排除符合要求的文件或目录。这等同于在客户端命令中使用--include来指定模式,结合include和exclude可以定义复杂的exclude/include规则。  

include from:指定一个包含include模式的定义的文件名,服务器从该文件中读取include列表定义。  

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

secrets file:该选项指定一个包含定义用户名:密码对的文件。只有在" auth users" 被定义时,该文件才有作用。文件每行包含一个username:passwd对。一般来说密码最好不要超过8个字符。没有默认的secures file名,注意:该文件的权限一定要是600,否则客户端将不能连接服务器。  

hosts allow:指定哪些IP的客户允许连接该模块。定义可以是以下形式:

单个IP地址,例如:192.167.0.1,多个IP或网段需要用空格隔开, 

整个网段,例如:192.168.0.0/24,也可以是192.168.0.0/255.255.255.0

 “*”则表示所有,默认是允许所有主机连接。

hosts deny:指定不允许连接rsync服务器的机器,可以使用hosts allow的定义方式来进行定义。默认是没有hosts deny定义。  

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

Timeout:通过该选项可以覆盖客户指定的IP超时时间。通过该选项可以确保rsync服务器不会永远等待一个崩溃的客户端。超时单位为秒钟,0表示没有超时定义,这也是默认值。对于匿名rsync服务器来说,一个理想的数字是600。  

例如:下面是一个常见的rsync服务器的配置文件


 













 

rsync 服务重启 rsync服务配置_客户端





实例1:将WEB站点的主目录同步镜像备份到另一台备份服务器的/var/web中,web站点主目录在默认的/var/www/html中,对于备份服务器/var/web目录的内容每次同步必须和服务器上一致。为了安全需要将rsync端口改为”888”

步骤1:建立rsync配置文件,如下图:

rsync 服务重启 rsync服务配置_服务器_02


步骤2:建立用户密码和欢迎登录访问文件,并设置好权限,如下图


rsync 服务重启 rsync服务配置_rsync 服务重启_03

步骤3:如果没有DNS的话,需要在服务器的/etc/hosts文件中添加客户端机器的名称解析



rsync 服务重启 rsync服务配置_客户端_04

步骤4:启动rsync服务


rsync 服务重启 rsync服务配置_客户端_05

步骤5:客户端同步备份,如下图:


rsync 服务重启 rsync服务配置_客户端_06

实例2:针对实例1的情况,需要将/var/www/html下的a.txt目录不要同步备份,有2种解决办法,第一在服务器端指定exclude或exclude from ;第二种办法是在客户端过滤—filter或—exclude

 办法1:在服务器端指定exclude参数,如下图

rsync 服务重启 rsync服务配置_默认值_07

 


办法2:在客户端指定,如下图:

rsync 服务重启 rsync服务配置_默认值_08



rsync 服务重启 rsync服务配置_默认值_09

实例3:查看服务器上的所有同步备份目录,如下图

rsync 服务重启 rsync服务配置_服务器_10


实例4:查看rsync服务器上的web同步目录下的内容,如下图:

rsync 服务重启 rsync服务配置_运维_11


实例5:rsync同步客户端通过密码文件同步服务器内容,如下图

rsync 服务重启 rsync服务配置_服务器_12

 

扩展实验1:rsync服务器的同步目录中的p_w_picpaths/a.html,config/gloab不要同步到备份服务器,需要用exclude from配置

 


转载于:https://blog.51cto.com/cslzy/621877