部署CwRsyncServer实现Linux下文件同步到WindowsServer服务器

简介: 部署CwRsyncServer实现Linux下文件同步到WindowsServer服务器

部署CwRsyncServer实现Linux下文件同步到WindowsServer服务器

场景描述

需要将Linux 服务器某个目录下的所有文件定期同步到WindowsServer2012服务器上

640.png

尝试:前期使用过在WindowsServer2012服务器安装goodsync同步软件这种方案,通过SFTP协议同步Linux服务器某目录所有文件到本地的WindowsServer2012服务器上

但goodsync试用到期后需要购买授权收费


后面决定使用CwRsyncServer这种方法


cwRsync简单介绍


cwRsync是基于cygwin平台打造的rsync软件包,功能强大,绿色安全,可以支持windows对windows、windows对Linux、Linux对windows高效文件同步。

使用 cwRsync 来同步文件后,只需要对一台主服务器进行文件修改,其他镜像服务器可以自动同步,包括文件的更新、删除、重命名等。


下面介绍部署CwRsyncServer实现Linux下文件同步到WindowsServer服务器


1、在Windows Server 2012服务器上先安装部署cwRsyncServer


下载CwRsyncServer V4.1.0 正式版(自行百度)


1、以管理员身份运行进行安装

640.jpg

2、系统自动创建用户SvcCWRSYNC,无需修改用户名,修改密码后直接默认安装

640.jpg


640.jpg

640.jpg

用户SvcCWRSYNC只用来运行 cwRsyncServer 服务端程序

640.jpg640.jpg


并将服务启动设置为自动

640.jpg

3、C:\Program Files (x86)\ICW目录下修改rsyncd.conf


修改成如下


use chroot = false
uid = 0 
gid = 0 
strict modes = false
hosts allow = *
log file = rsyncd.log
# Module definitions
# Remember cygwin naming conventions : c:\work becomes /cygwin/c/work
#
[backup]
path = /cygdrive/c/Linux_backup
read only = false
transfer logging = yes
auth users = cwrsync
secrets file = etc/cwrsync.passwd


其中C:\Linux_backup目录当作备份目录(目的端)


640.jpg



  • Tips:


uid = 0 gid = 0 记得加上,解决@ERROR: invalid gid nobody报错问题


4、在C:\Program Files (x86)\ICW\etc目录下创建cwrsync.passwd密码文件


cwrsync:cwrsync@2021


写入授权用户cwrsync密码


640.jpg


5、接下来创建Linux_backup目录


640.png


6、添加cwRsyncServer 873端口的入站防火墙规则

放通入方向的873端口

640.jpg

640.jpg


7、 然后重启RsyncServer服务

640.jpg

640.jpg


2、Linux端部署rsync客户端并测试


若没有安装rsync先yum安装


yum install rsync

640.jpg

cd /home/
dd if=/dev/zero of=test.file count=1 bs=100M


创建测试文件

测试是否可以正常同步传输


rsync --progress -avz --delete /home/* cwrsync@192.168.31.12::backup

640.jpg


640.jpg

3、编写脚本,利用crontab实现定时同步


  • 1、/opt/cwrsync.sh


vi /opt/cwrsync.sh
#!/bin/bash
export RSYNC_PASSWORD=cwrsync@2021
LOCK=/var/log/cwrsync_record.log
echo "备份日期:" >> ${LOCK} 2>&1
echo `date '+%Y-%m-%d_%T'`  >> ${LOCK} 2>&1
echo "=================cwRsync starting==============================="   >> ${LOCK} 2>&1
rsync --progress -avz --delete /home/* cwrsync@192.168.31.12::backup  >> ${LOCK} 2>&1
echo "=================cwRsync Finished==============================="   >> ${LOCK} 2>&1

640.jpg

  • 2、 编辑定制任务
crontab -e
编辑定制任务
*/5 * * * * /opt/cwrsync.sh
例如每5钟同步一次
crontab -l
  • 3 重启crond服务


systemctl restart crond


640.jpg

  • 4、再创建几个测试文件
dd if=/dev/zero of=test_crontab.file count=1 bs=100M
tail -f /var/log/cwrsync_record.log


可以看到定时同步任务的执行情况日志


640.jpg

可以看到定时同步成功


WindowsServer端的rsync同步日志


640.jpg


相关文章
|
7月前
|
弹性计算 人工智能 前端开发
在阿里云ECS上部署n8n自动化工作流:U2实例实战
本文介绍如何在阿里云ECS的u2i/u2a实例上部署开源工作流自动化平台n8n,利用Docker快速搭建并配置定时任务,实现如每日抓取MuleRun新AI Agent并推送通知等自动化流程。内容涵盖环境准备、安全组设置、实战案例与优化建议,助力高效构建低维护成本的自动化系统。
1750 5
|
7月前
|
Java Linux Apache
在CentOS服务器上编译并部署NiFi源码
部署Apache NiFi在CentOS上是一个涉及细节的过程,需要注意Java环境、源码编译、配置调整等多个方面。遵循上述步骤,可以在CentOS服务器上成功部署和配置Apache NiFi,从而高效地处理和分发数据。
267 17
|
8月前
|
弹性计算 安全 Linux
使用阿里云服务器安装Z-Blog博客网站流程,新手一键部署教程
本教程教你如何在阿里云99元服务器上,通过宝塔Linux面板一键部署Z-Blog博客。基于CentOS 7.9系统,从远程连接、安装宝塔面板、开放端口到部署Z-Blog全流程详解,操作简单,新手也能轻松搭建个人博客网站。
990 13
|
8月前
|
弹性计算 Devops Shell
用阿里云 DevOps Flow 实现 ECS 部署自动化:从准备到落地的完整指南
阿里云 DevOps Flow 是一款助力开发者实现自动化部署的高效工具,支持代码流水线构建、测试与部署至ECS实例,显著提升交付效率与稳定性。本文详解如何通过 Flow 自动部署 Bash 脚本至 ECS,涵盖环境准备、流水线搭建、源码接入、部署流程设计及结果验证,助你快速上手云上自动化运维。
670 0
监控 安全 Linux
433 0
|
9月前
|
弹性计算 安全 Linux
阿里云服务器ECS安装宝塔Linux面板、安装网站(新手图文教程)
本教程详解如何在阿里云服务器上安装宝塔Linux面板,涵盖ECS服务器手动安装步骤,包括系统准备、远程连接、安装命令执行、端口开放及LNMP环境部署,手把手引导用户快速搭建网站环境。
|
9月前
|
监控 Java Linux
Apache NiFi项目的编译与部署于CentOS服务器
总而言之,Apache NiFi的编译和部署虽然涉及多个步骤,但这些操作步骤简明扼要,即使是不太熟悉Java或Maven的用户也能跟随指南完成。通过遵循上述步骤,您将能够在CentOS服务器上成功部署Apache NiFi,为您的数据流处理任务建立一个功能强大的平台。
542 16
|
9月前
|
资源调度 负载均衡 JavaScript
使用PM2工具部署Vue.js应用于服务器
以上步骤完成之后,你就成功利⽤ PM⼆工具将 Vuejs 应⽰程序部署至服 务 器,并且配合反向代理实现了高效稳定访问及负载均衡功能。
417 0