Rsync安装与配置

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhangkezhi_471885889/article/details/16117681

1、Rsync规划

Rsync配置前首先规划好,同步的方向性。方向性分为推和拉的方式,规划推、拉是为了可以在防火墙设置端口是谁主动连接。例如:一般为从APP服务器生成的静态页面使用推的方式将文件推送到Apache服务器上。下面就是使用推的方式进行配置。

2、Rsync服务器配置

2.1、Rsync检查

Rsync3.0.0 pre6 安全漏洞,需要使用该版本以上的Rsync。

# [root@localhost ~]rsync  --version

rsync version 3.0.9  protocol version 30…….

2.2、Rsync服务器配置文件

rsync的主要有以下三个配置文件rsyncd.conf(主配置文件)、rsyncd.secrets(密码文件)、rsyncd.motd(rysnc服务器信息)

  服务器配置文件(/etc/rsyncd/rsyncd.conf),该文件默认不存在,请创建它。

2.3、rsyncd.conf配置

例子:可参见目录:服务器配置/etc/rsyncd/server/rsyncd.conf

rsyncd.conf的参数写在上边就是全局参数和写在模块里的就是模块参数

#vi /etc/rsyncd/server/rsyncd.conf

全局参数

uid = root                                  //运行RSYNC守护进程的用户

gid = root                                  //运行RSYNC守护进程的组

use chroot = yes//使用chroot

max connections = 4              // 最大连接数为4

strict modes =yes                   //是否检查口令文件的权限

port = 873                                 //默认端口873

模块参数

[backup]                                   //这里是认证的模块名,在client端需要指定

path = /home/backup/          //需要做镜像的目录,不可缺少!

comment = This is a test     //这个模块的注释信息

ignore errors                //可以忽略一些无关的IO错误

read only = yes              // 只读

list = no                   //不允许列文件

auth users = hening             //认证的用户名,如果没有这行则表明是匿名,此用户与系统无关

secrets file = /etc/rsync.pas           //密码和用户名对比表,密码文件自己生成

hosts allow = 192.168.1.1,10.10.10.10      //允许主机

hosts deny = 0.0.0.0/0                   //禁止主机

#transfer logging = yes

2.4、rsyncd.secrets配置

例子:可参见目录:服务器配置/etc/rsyncd/server/rsyncd.secrets

配置rsync密码(在上边的配置文件中已经写好路径) rsync.pas(名字随便写,只要和上边配置文件里的一致即可),格式(一行一个用户)

账号:密码

rsync:password


需要将rsyncd.secrets更改权限。将rsyncd.secrets这个密码文件的文件属性设为root拥有, 且权限要设为600, 否则无法备份成功!

执行命令:chmod 600 /etc/rsyncd/server/rsyncd.secrets

3、Rsync客户端

3.1、客户端配置介绍

客户端只需要配置一个密码文件。配置rsync密码(在上边的配置文件中已经写好路径) /etc/rsyncd/client/rsyncd_190.(格式密码)

password

修改权限密码文件权限为指定用户,并且文件权限为600


#cd /etc

#chownroot.rootrsync.pas

#chmod 600 rsync.pas

client连接SERVER命令,从SERVER端取文件

/usr/bin/rsync -vzrtopg --progress [email protected]::backup /home/backup --password-file=/etc/rsync.pas

向SERVER端上传文件

 /usr/bin/rsync -vzrtopg --progress--password-file=/root/rsync.pas /home/backup [email protected]::backup

这个命令将把本地机器/home/backup目录下的所有文件(含子目录)全部备份到RSYNC SERVER(172.20.0.6)的backup模块的设定的备份目录下。

请注意如果路径结束后面带有"/",表示备份该目录下的东东,但不会创建该目录,如不带"/"则创建该目录。

3.2、客户端自动运行(详情请参考:http://blog.csdn.net/zhangkezhi_471885889/article/details/15341337)

1)vi/usr/local/rsync/time.sh     //制作脚本文件

把下边的内容复制进去

#!/bin/bash

/usr/bin/rsync -vzrtopg --progress [email protected]::backup /home/backup --password-file=/etc/rsync.pas

2) crontab -e

加入./5 * * * * /usr/local/rsync/time.sh        //每5分运行一次time.sh脚本文件

4、服务器配置步骤样例

Web服务器配置Rsync服务

1.根据要求配置好rsyncd.conf及rsyncd.secrets文件。

2.上传rsyncd.conf及rsyncd.secrets文件到配置目录中,例如/etc/rsyncd/server/

3.更改rsyncd.secrets文件权限,执行:

chmod 600 /etc/rsyncd/server/rsyncd.secrets

4.启动Rsync服务器端服务,执行:

rsync --daemon --config=/etc/rsyncd/server/rsyncd.conf

5.检查rsync是否在执行。

ps -ef | greprsync

6.检查端口873是否监听

netstat -a | greprsync

7.检查端口873是否能够接收服务,登录到另外一个服务器或者机器执行

telnet 192.168.1.190  873

客户端配置步骤

1.根据要求配置好rsync_190.sh及rsyncd_190.secrets文件。

2.上传rsync_190.sh及rsyncd_190.secrets文件到配置目录中,例如/etc/rsyncd/client/

3.更改rsyncd_190.secrets文件权限,执行:

chmod 600 /etc/rsyncd/client/rsyncd_190.secrets

4.运行rsync_190.sh测试是否能够正常传送文件。

5.配置自动运行脚本(执行crontab -e命令,编辑加入:

*/5 * * * * /etc/rsyncd/client/rsync_190.sh表示5分钟同步一次,查看自动运行日志命令 tail -f /var/log/cron)


猜你喜欢

转载自blog.csdn.net/zhangkezhi_471885889/article/details/16117681
今日推荐