cwRsyncServer从windows下数据实时同步到linux服务器上的实现过程

简介:

    由于公司有两台windows服务器,开发在操作时一般也都是在这两台服务器上上传一些数据或修改一些东西,而Linux上的服务器也要跟windows上的数据要保持一致而又不需要人为的实现这个过程,基于此过程,昨天花了点时间,完成了基本的测试实现过程,今天就把这过程给记录下来,方便以后查看,以希望可以帮到还在困惑的朋友们。


第一步:在windows上的安装cwRsyncServer4.1.0以及配置过程:


    在windows上下载安装包cwRsyncServer4.rar,这个不多解析,大家都懂,要是在虚拟机上安装windowd服务器的,如果你的windows服务器上不了网,那就在本机上下载好持拷贝过去就好了,如果还不知道怎么拷贝到windows上去的话那就在linux上建个ftp服务器,把文件丢里面去共享就可以拷贝了。


    在拷贝中如果出现这个问题:windows 2003当前的安全设置不允许从该位置下载文件的解决方案:

    只需要设置Internet选项-->安全-->自定义级别 找到下载项中的“文件下载”,启用即可。

    wKioL1Pqvd2A_AxwAAL26uRPSDw894.jpg


如下是cwRsyncServer安装过程,一直点下一步就可以了,这里就不一一贴出来了:

    wKiom1PqvTCwF3n_AAIPAM5UBbU968.jpg

    wKioL1PqvlmykeF8AAGxmWS1va8472.jpg

    这里需要创建一个帐户,就用默认的就好了,设置一个自己的密码就OK了。

    wKiom1PqvXfhq9fdAADLPZzCyjw670.jpg


    安装完成之后下面开始配置,打开安装目录下的文件目录:C:\Program Files (x86)\ICW,修改rsyncd.conf配置文件的内容为以下配置;

    wKioL1PqvxaScZyhAAHXxLdhct8777.jpg

    wKioL1Pqv0yA_Uw4AAH-u_s2gm8933.jpg

    这里要注意的是,如果不写uid=0,和gid=0的话就,在远程连接时就会出现以下的情况:    wKioL1Pqv7Lyow2NAACvcgMiVWc876.jpg


    到这里了就要在F盘下新建一个rsyncdata的目录,这个目录就是指它里面的所有数据同步到linux的指定目录去的,也就是windows下的rsyncd.conf配置文件的[rsyncdata]模块对应的文件,新建好之后我们还需要改一些配置:    

1
2
3
4
5
6
7
     [rsyncdata]     #指定模块的头信息
     path =  /cygdrive/f/rsyncdata     #需要同步数据的目录,这个目录指F盘下的rsyncdata目录
     read  only =  true     #是否为只读
     list = no
     hosts allow = 10.17.1.200,10.17.1.88,10.17.1.60  #允许访问的主机,多个用逗号分隔
     auth  users  rsync     #指定认证的用户名
     secrets  file  /cygdrive/f/rsyncd .secrets     #指定认证用户的密码文件存放路径,这个路径指F盘下的rsyncd.secrets,一会需要新建这个文件

    还需要修改一下rsyncdata这个目录的一些相关属性信息,右键这个文件选属性:

    wKioL1PqxqaiX5DAAABhprn36qE304.jpg

    wKiom1PqwMPQ48L5AAJD8ELmMG8259.jpg

输入完SvcCWRSYNC这个用户名后点“检查名称”就可以匹配上了,再点确定就OK了。

最后再改一下这个文件对这个用户的访问权限:

    wKiom1PqwVuTjqouAAFriyIPZeg182.jpg


选中我的电脑--右键管理---服务和应用--服务,找到RsyncSever,双击--启动,把这个服务器起动起来:

    wKiom1PqwfLyXaQDAAL-w8Zjkc8763.jpg

    wKioL1PqwxyS3dIhAAGuT0La75s505.jpg

到这里应该是说windows下的就配置完了,但是要注意的是如果你的linux需要用telnet来连接到windows上来的话那windows上的防火墙记得要关闭,否则很可能连不上去,也可以在本上的测试一下,出现以下情况就说明可以连接上去了,说明windows服务可用了。

    wKiom1PqwwqjwL5UAAGHxtWrLj0021.jpg

    


    在cmd下输入你windows的本机地址和rsync的监听端口,它的默认监听的端口是873,回车:

    wKiom1Pqw6mz5CecAABvqKczt0k209.jpgwKioL1PqxOWCzUcPAAAfXSsAsLE514.jpg

    出现@RSYNCD:30.0这个就说明可以连接上去了。


二、Rsync客户端配置,这个就需要linux上做配置了,相关的配置见如下过程:


1、查看selinux机制,关闭selinux

[root@node1 ~]# getenforce

Disabled

2、安装Rsync客户端软件

[root@node1 ~]# yum install rsync xinetd

3、需要安装这两个软件包就可以了,安装好之后就要修改一点配置文件了:

[root@node1 ~]# vi /etc/xinetd.d/rsync #编辑配置文件,设置开机启动rsync ,Centos上的rsync使用xinetd启用的

将disable=yes,改为no

service rsync

{

        disable = no

        socket_type     = stream

        wait            = no

        user            = root

        server          = /usr/bin/rsync

        server_args     = --daemon

        log_on_failure += USERID

}

/etc/init.d/xinetd start #启动xinetd这个服务

4、修改之后就远程连接测试一下,记得把windows的防火墙给关闭了哦,要不然很可能会连接不上的,或都在windows防火墙上开放873这个端口

wKiom1PqxqfwxhnUAABZ0Zz9Akk082.jpg

OK,说明连接到windows上成功了,那接下来我们就创建一个与windows下同步的目录了:

[root@node1 ~]# mkdir pv /rsyncdata/data


    为了同步数据时不用每次都不手动输入密码,我们在客户端(linux下)也创建一个和服务端(windows)一样的密码文件(此文件路径和密码要与服务器端的一样,客户端不用写名字)

[root@node1 ~]# vim /etc/rsyncd.secrets #只需要写上服务器端上的用户密码就可以了

    wKiom1PqyBjBI3D8AAAO_o7ZHq8437.jpg

[root@node1 ~]# chmod 600 /etc/rsyncd.secrets  #改一下权限

5、到这里我们就可以写命令来拉取windows服务器端上的数据了:

[root@node1 ~]# rsync -vazrtopqg --delete --password-file=/etc/rsyncd.secrets rsync@10.17.1.88::rsyncdata/* /rsyncdata/data/

wKiom1PqyODh9NdHAAEGsrXk-Fc256.jpg

传输成功,这里说明一下这几个参数表示什么:

-v, --verbose #详细模式输出

-q, --quiet #精简输出模式

-a, --archive #归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD

-r, --recursive #对子目录以递归模式处理 

-o, --owner #保持文件属主信息 

-g, --group #保持文件属组信息

-t, --times #保持文件时间信息

--delete #删除那些DST中SRC没有的文件 

--password-file=FILE #从FILE中得到密码

6、为了一是每次有数据修改时都要手动去同步一步,我们把这个命令写成一个脚本,再添加一个任务计划,这个就可以实现自动同步数据了;

wKioL1Pqy4awIx0nAABfDvqmtkY675.jpg

[root@node1 ~]# crontab -e

* * * * * /bin/bash /root/rsync.sh &> /dev/null  #我们设置每分钟同步一次


    OK了,到这里我们的整个的配置算是完成了,可能还做得不到的地方,希望朋友们发现了给我指出哦,在此先谢过了。










本文转自 wei0164 51CTO博客,原文链接:http://blog.51cto.com/tanxw/1539252,如需转载请自行联系原作者
目录
相关文章
|
6天前
|
运维 监控 Linux
服务器管理面板大盘点: 8款开源面板助你轻松管理Linux服务器
在数字化时代,服务器作为数据存储和计算的核心设备,其管理效率与安全性直接关系到业务的稳定性和可持续发展。随着技术的不断进步,开源社区涌现出众多服务器管理面板,这些工具以其强大的功能、灵活的配置和友好的用户界面,极大地简化了Linux服务器的管理工作。本文将详细介绍8款开源的服务器管理面板,包括Websoft9、宝塔、cPanel、1Panel等,旨在帮助运维人员更好地选择和使用这些工具,提升服务器管理效率。
|
14天前
|
安全 算法 Linux
Linux 服务器还有漏洞?建议使用 OpenVAS 日常检查!
在数字化时代,Linux 服务器的安全至关重要。OpenVAS 是一款优秀的开源漏洞扫描工具,可以帮助及时发现并修复服务器中的安全隐患。本文将介绍 OpenVAS 的主要功能、使用方法及应对漏洞的措施,帮助用户加强服务器安全管理,确保企业数字化安全。
36 7
|
17天前
|
监控 Ubuntu Linux
使用VSCode通过SSH远程登录阿里云Linux服务器异常崩溃
通过 VSCode 的 Remote - SSH 插件远程连接阿里云 Ubuntu 22 服务器时,会因高 CPU 使用率导致连接断开。经排查发现,VSCode 连接根目录 ".." 时会频繁调用"rg"(ripgrep)进行文件搜索,导致 CPU 负载过高。解决方法是将连接目录改为"root"(或其他具体的路径),避免不必要的文件检索,从而恢复正常连接。
|
19天前
|
数据库 数据安全/隐私保护 Windows
Windows远程桌面出现CredSSP加密数据修正问题解决方案
【10月更文挑战第30天】本文介绍了两种解决Windows系统凭据分配问题的方法。方案一是通过组策略编辑器(gpedit.msc)启用“加密数据库修正”并将其保护级别设为“易受攻击”。方案二是通过注册表编辑器(regedit)在指定路径下创建或修改名为“AllowEncryptionOracle”的DWORD值,并将其数值设为2。
54 3
|
20天前
|
缓存 Unix Linux
服务器linux!!!
本文介绍了计算机的演变历史、硬件基础知识及服务器相关知识。从电子管时代的ENIAC到冯-诺伊曼架构,再到现代计算机系统组成,详细讲解了计算机的发展历程。此外,文章还介绍了服务器的分类、品牌、硬件组成以及IDC机房的上架流程,为读者提供了全面的技术背景知识。
37 0
服务器linux!!!
|
22天前
|
人工智能 安全 Linux
|
24天前
|
Linux 数据库
Linux服务如何实现服务器重启后的服务延迟自启动?
【10月更文挑战第25天】Linux服务如何实现服务器重启后的服务延迟自启动?
127 3
|
22天前
|
Linux
Linux 修改服务器时间
【10月更文挑战第27天】Linux 修改服务器时间
54 0
|
5天前
|
网络安全 Windows
Windows server 2012R2系统安装远程桌面服务后无法多用户同时登录是什么原因?
【11月更文挑战第15天】本文介绍了在Windows Server 2012 R2中遇到的多用户无法同时登录远程桌面的问题及其解决方法,包括许可模式限制、组策略配置问题、远程桌面服务配置错误以及网络和防火墙问题四个方面的原因分析及对应的解决方案。
|
10天前
|
监控 安全 网络安全
Windows Server管理:配置与管理技巧
Windows Server管理:配置与管理技巧
40 3
下一篇
无影云桌面