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

部署CwRsyncServer实现Linux下文件同步到WindowsServer服务器Tips uid 0 gid 0 记得加上 解决 ERROR invalid gid nobody 报错问题

大家好,欢迎来到IT知识分享网。

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

场景描述

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

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

(图片可点击放大查看)

尝试:前期使用过在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、以管理员身份运行进行安装

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

(图片可点击放大查看)

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

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

(图片可点击放大查看)

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

(图片可点击放大查看)

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

(图片可点击放大查看)

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

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

(图片可点击放大查看)

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

(图片可点击放大查看)

并将服务启动设置为自动

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

(图片可点击放大查看)

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目录当作备份目录(目的端)

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

(图片可点击放大查看)

  • Tips:

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

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

cwrsync:cwrsync@2021 

写入授权用户cwrsync密码

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

(图片可点击放大查看)

5、接下来创建Linux_backup目录

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

(图片可点击放大查看)

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

放通入方向的873端口

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

(图片可点击放大查看)

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

(图片可点击放大查看)

7、 然后重启RsyncServer服务

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

(图片可点击放大查看)

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

(图片可点击放大查看)

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

若没有安装rsync先yum安装

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

(图片可点击放大查看)

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

创建测试文件

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

rsync --progress -avz --delete /home/* cwrsync@192.168.31.12::backup 
部署CwRsyncServer实现Linux下文件同步到WindowsServer服务器

(图片可点击放大查看)

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

(图片可点击放大查看)

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 
部署CwRsyncServer实现Linux下文件同步到WindowsServer服务器

(图片可点击放大查看)

  • 2、 编辑定制任务
crontab -e 编辑定制任务 */5 * * * * /opt/cwrsync.sh 例如每5钟同步一次 crontab -l 
  • 3 重启crond服务
systemctl restart crond 
部署CwRsyncServer实现Linux下文件同步到WindowsServer服务器

(图片可点击放大查看)

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

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

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

(图片可点击放大查看)

可以看到定时同步成功

WindowsServer端的rsync同步日志

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

(图片可点击放大查看)

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/145947.html

(0)
上一篇 2025-04-17 22:20
下一篇 2025-04-17 22:26

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信