windows下使用cwRsync定期备份网站(服务器文件同步)
程序员文章站
2022-04-19 11:09:15
linux下有sync, windows下也有类似的软件,就是cwrsync,此软件分为服务器端/客户端。能找到的最新的版本是3.0.1。下载地址 cwrsync下载 1、...
linux下有sync, windows下也有类似的软件,就是cwrsync,此软件分为服务器端/客户端。能找到的最新的版本是3.0.1。下载地址 cwrsync下载
1、cwrsync安装
安装的过程很简单,安装 server 就可以了,server 包括了 client 的功能。安装完 server 后,会在 service 中增加 rsync 和 ssh 服务,进入服务管理,设置为自动启动。安装成功后,要备分的文件目录必须加上 svcwrsync 这个用户可读权限。
2、cwrsync服务器端配置
进入cwrsync安装目录,配置 rsyncd.conf 如下。
程序代码
use chroot = false
strict modes = false
hosts allow = *
log file = rsyncd.log #log
pid file = rsyncd.pid
secrets file = password # 这里指定了用户名密码文件在其安装目录里,名字叫 password,其内容是txt编辑为 4899:4899 前面是用户名,后面是密码
# module definitions
# remember cygwin naming conventions : c:\work becomes /cygwin/c/work
#
[webbackup]
path = /cygdrive/d/web/ #注意格式,这说明是d盘web目录下的4899目录,这是web目录
read only = true #只读
list = no
auth users = 4899 #指定用户名
transfer logging = no #是否记录详细的传输情况
[data]
path = /cygdrive/d/web/sql_back #这是数据库备分目录
read only = true
list = no
auth users = 4899
transfer logging = no
注意:这里使用了默认端口873,如果要换端口,需要在conf里加 port=你要的端口号,做了端口限制的要开启cwrsync所使用的端口。
3、cwrsync自动数据同步
因为只是最简单的数据同步,所以就不使用 ssh 了,直接启动 rsync 服务就可以了。在客户机上安装cwrsync,svcwrsync 这个用户需要可以写入你指定的备分目录的权限,还要有读密码文件的权限。然后新建一个bat 文件,data.bat,内容如下:
程序代码
rsync -vzrtopg --progress --delete --password-file=/cygdrive/e/password2 4899@61.152.249.18::data /cygdrive/e/web_77/sql_back
注意看:
a,password-file,你要在指定的目录下定义一个 password2 文件,只要写4899这个用户名对应的密码就可以。我这里是e盘根目录下的password2。
b,4899@61.152.249.18::data 分别是,用户名,服务器端ip,config里的需要备分的段落名。c,/cygdrive/e/web_77/sql_back 备分的目的地。
3、cwrsync定期同步数据
在windows控制面板里,点计划任务,选中我们新建的data.bat,按需要设置自动运行。目前 是设置为每天凌晨3点同步数据。
后记:这里配置的cwrsync是完全同步的,主站内容增加或删减,在cwrsync同步时,同样增加或删减,所以每次同步时搜索文件时间会比较长,视文件多少及服务器硬盘io而定。目录web目录下有七万多文件,列文件的时间大约在10分钟左右。第一次备分要很久,因为文件多,后面就是增加或删减,除去列文件时间,真正的文件传输时间就很短了,一会就能更新完毕。如果大家在使用中有什么疑问或有些需要交流,可以访问,点用户留言跟站长联系,谢谢!
1、cwrsync安装
安装的过程很简单,安装 server 就可以了,server 包括了 client 的功能。安装完 server 后,会在 service 中增加 rsync 和 ssh 服务,进入服务管理,设置为自动启动。安装成功后,要备分的文件目录必须加上 svcwrsync 这个用户可读权限。
2、cwrsync服务器端配置
进入cwrsync安装目录,配置 rsyncd.conf 如下。
程序代码
复制代码 代码如下:
use chroot = false
strict modes = false
hosts allow = *
log file = rsyncd.log #log
pid file = rsyncd.pid
secrets file = password # 这里指定了用户名密码文件在其安装目录里,名字叫 password,其内容是txt编辑为 4899:4899 前面是用户名,后面是密码
# module definitions
# remember cygwin naming conventions : c:\work becomes /cygwin/c/work
#
[webbackup]
path = /cygdrive/d/web/ #注意格式,这说明是d盘web目录下的4899目录,这是web目录
read only = true #只读
list = no
auth users = 4899 #指定用户名
transfer logging = no #是否记录详细的传输情况
[data]
path = /cygdrive/d/web/sql_back #这是数据库备分目录
read only = true
list = no
auth users = 4899
transfer logging = no
注意:这里使用了默认端口873,如果要换端口,需要在conf里加 port=你要的端口号,做了端口限制的要开启cwrsync所使用的端口。
3、cwrsync自动数据同步
因为只是最简单的数据同步,所以就不使用 ssh 了,直接启动 rsync 服务就可以了。在客户机上安装cwrsync,svcwrsync 这个用户需要可以写入你指定的备分目录的权限,还要有读密码文件的权限。然后新建一个bat 文件,data.bat,内容如下:
程序代码
复制代码 代码如下:
rsync -vzrtopg --progress --delete --password-file=/cygdrive/e/password2 4899@61.152.249.18::data /cygdrive/e/web_77/sql_back
注意看:
a,password-file,你要在指定的目录下定义一个 password2 文件,只要写4899这个用户名对应的密码就可以。我这里是e盘根目录下的password2。
b,4899@61.152.249.18::data 分别是,用户名,服务器端ip,config里的需要备分的段落名。c,/cygdrive/e/web_77/sql_back 备分的目的地。
3、cwrsync定期同步数据
在windows控制面板里,点计划任务,选中我们新建的data.bat,按需要设置自动运行。目前 是设置为每天凌晨3点同步数据。
后记:这里配置的cwrsync是完全同步的,主站内容增加或删减,在cwrsync同步时,同样增加或删减,所以每次同步时搜索文件时间会比较长,视文件多少及服务器硬盘io而定。目录web目录下有七万多文件,列文件的时间大约在10分钟左右。第一次备分要很久,因为文件多,后面就是增加或删减,除去列文件时间,真正的文件传输时间就很短了,一会就能更新完毕。如果大家在使用中有什么疑问或有些需要交流,可以访问,点用户留言跟站长联系,谢谢!