发现一个小工具对数据备份感觉挺不错的,分享一下。

rSync服务器实现不同平台下备份数据同步

一,一台windows做服务器一台windows做客户端,实现windows平台下的数据同步备份

先说一下环境,服务器的ip192.168.0.11客户端的ip192.168.0.12

1,在服务器和客户端分别安装rsync软件

rSync服务器实现不同平台下备份数据_rsync


rSync服务器实现不同平台下备份数据_数据备份_02

安装过程很简单,下一步下一步完成。

安装之后我们看一下安装的结果,

rSync服务器实现不同平台下备份数据_rsync_03

产生的一些文件,其中rsyncd.conf是服务器端的主要配置文件,我们只需要在里面进行设置就可以实现我们想要的效果。我们想要的目的就是,是0.11D:/web目录里面的文件遵循一定的计划任务(后面我们会说明的)将数据备份到0.12D:/webtest下,下面看一下我们队rsync.conf的配置(其实大多也是找的资料再根据自己的需要修改的)下面是我在自己的0.11上面的修改

rSync服务器实现不同平台下备份数据_rsync_04

rsync -vzrtopg --progress --delete/cygdrive/h/ftp /cygdrive/z(本机拷贝)

关于上面配置文件中的一些具体的含义我们可以找一些示例看一下,

创建/etc/rsyncd.conf配置文件,内容如下:
uid = nobody        //
指定文件传输过程中的用户身份
gid = nobody        //
指定文件传输过程中的组身份
use chroot = no        //
是否启动目录chroot限制
max connections = 5        //
指定允许的最大并发客户端连接数
port = 873        //
指定服务监听的端口,若使用默认的873端口,此行可省略
address = 1.2.3.4        //
指定服务监听的ip地址,默认为0.0.0.0。使用xinetd方式启动服务时此行被忽略
log file = /var/log/rsyncd.log        //
指定使用独立的日志文件的位置
pid file = /var/run/rsyncd.pid        //
保存pid到指定文件,以便于使用脚本终止进程
hosts allow = 1.2.3.123/32        //
此行可用于设置允许的客户端范围
[www]                        //
设置一个名为www的备份目录区段(模块),名称可自定义
path = /var/www/html        //
指定需要被用于远程备份的目录
comment = Whole Web Area        //
注释信息
read only = yes        //
该目录设置为只读,即至允许客户端下行同步,不允许上传。若需要进行上行还原数据,可以改为no
dont compress = *.gz *.tgz *.zip *.z *.bz2*.tbz        //
对指定格式的文件不再进行压缩

authusers = bakuser1        //指定允许远程同步此目录的用户名。若使用匿名方式,此行和下行可以去掉
secrets file =/etc/rsyncd.users        //
指定用户名:密码数据库文件位置

我自己的一些修改来备份指定的文件

# Module definitions

# Remember cygwin naming conventions :c:\work becomes /cygwin/c/work

要备份的服务器上的目录文件

[web]

path = /cygdrive/d/web  //我备份的是服务器0.11D盘下的web目录

read only = yes        //该目录设置为只读,即至允许客户端下行同步,不允许上传。若需要进行上行还原数据,可以改为no

transfer logging = yes

auth users = administrator

secrets file =/cygdrive/f/administrator.secrets //指定用户名:密码数据库文件位置我指定的是服务器F盘下的administrator.secrets文件,密码是administrator:1234567(如果是服务器要这样的格式,而客户端就直接下1234567就可以了)

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

密码文件的存放位置

rSync服务器实现不同平台下备份数据_数据备份_05

还要添加两个端口和打开两个服务

rSync服务器实现不同平台下备份数据_数据备份_06


rSync服务器实现不同平台下备份数据_rsync_07


rSync服务器实现不同平台下备份数据_rsync_08

2,下面是客户端的一些设置,然后测试一下

可以看到已经可以telnet22、873端口了,说明我们的链接没问题

rSync服务器实现不同平台下备份数据_数据备份_09

rSync服务器实现不同平台下备份数据_rsync_10

rSync服务器实现不同平台下备份数据_数据备份_11

rSync服务器实现不同平台下备份数据_rsync_12

我们来一下数据的备份输入密码的时候是看不到的,可以看到数据已经同步到了客户端的D盘下的webtest

rSync服务器实现不同平台下备份数据_数据备份_13

2,可以在添加一个任务计划,这样就可以在特定的时间不用人工干预而自动备份了,就是将那行命令保存为.bat格式的文件

rSync服务器实现不同平台下备份数据_rsync_14


rSync服务器实现不同平台下备份数据_rsync_15


就可以到一定的时间自己备份了。

二、windows做服务器,linux做客户端

服务器端是不用变的,主要就是客户端改一下

rSync服务器实现不同平台下备份数据_rsync_16

就是命令要注意一些



Windowslinux直间,可以在windows上面映射linux上面的盘符,然后实现本机拷贝,

rsync -vzrtopg --progress --delete /cygdrive/h/ftp /cygdrive/z(本机拷贝)