目录

  • 1. Windows自带的远程连接桌面使用
  • 2. windows服务端部署
  • 1.1 下载
  • 1.2 安装
  • 1.3 配置
  • 1.4 启动rsync服务
  • 3. linux同步到windows
  • 3.1 准备工作
  • 3.2 同步
  • 3.3 配合inotifywait实时同步
  • 4. windows同步到windows
  • 4.1 下载和解压
  • 4.2 连接测试
  • 4.3 password文件
  • 4.4 同步脚本
  • 4.5 定时任务计划创建


1. Windows自带的远程连接桌面使

  1. win + R打开运行界面
  2. 输入mstsc打开远程连接桌面
  3. 输入要连接的计算机地址、用户名、密码
  4. rsync 没有日志 rsync for windows_rsync

  5. 连接远程windows的时候,出现如下错误:
  6. rsync 没有日志 rsync for windows_文件同步_02

  7. win + R打开运行界面
  8. 输入gpedit.msc打开策略
  9. 找到该路径:“计算机配置” -> “管理模板” -> “系统” -> “凭据分配” -> “加密数据库修正”
  10. 编辑"加密数据库修正", 如下图所示
  11. rsync 没有日志 rsync for windows_rsync 没有日志_03

  12. 再次连接远程桌面即可

2. windows服务端部署

因为我们这里同步的目标是windows,所以需要在windows上部署服务端

1.1 下载

因为windows服务端最新版本的已经收费了,所以这里我们采用最新的免费版本4.1.0,点这里下载

下载完进行解压就可以了

1.2 安装

  1. 点击cwRsyncServer_4.1.0_Installer.exe进行安装
  2. 选择保存文件夹
  3. 这里设置用户名和密码:用户名自定义,密码自定义(如果安装的电脑有登录密码,则必须为登录密码)
  4. 点击Install,安装完成

1.3 配置

  1. 编辑ICW/rsyncd.conf,文件所以内容如下:
uid = 0
gid = 0
use chroot = false
strict modes = false
hosts allow = *
log file = rsyncd.log

# Module definitions
# Remember cygwin naming conventions : c:\work becomes /cygwin/c/work
#
# [test]
# path = /cygdrive/c/work
# read only = false
# transfer logging = yes



[rsync_linux246]
path = /cygdrive/d/hehuan_test/rsync_workspace/rsync_linux246/
ignore errors
read only = no
list = no
hosts allow = 192.168.*.0/255.255.255.0
auth users = apache
secrets file = /cygdrive/d/hehuan_test/rsync_workspace/rsyncd.password


[rsync_windows242]
path = /cygdrive/d/hehuan_test/rsync_workspace/rsync_windows242/
ignore errors
read only = no
list = no
hosts allow = 192.168.*.0/255.255.255.0
auth users = apache
secrets file = /cygdrive/d/hehuan_test/rsync_workspace/rsyncd.password
  1. 新建目录:rsync_workspace\rsync_linux246和rsync_workspace\rsync_windows242
  2. 新建文件::rsync_workspace\rsyncd.password,内容如下:
apache:apache
  1. 设置rsync_linux246和rsync_windows242目录的权限, 这里以rsync_linux246为例:右键rsync_linux246目录,选择属性
  2. 修改rsyncd.password权限为600
D:\hehuan_test>
D:\hehuan_test>cwRsyncServer_4.1.0\ICW\bin\chmod 600 rsync_workspace\rsyncd.password
cygwin warning:
  MS-DOS style path detected: rsync_workspace\rsyncd.password
  Preferred POSIX equivalent is: rsync_workspace/rsyncd.password
  CYGWIN environment variable option "nodosfilewarning" turns off this warning.
  Consult the user's guide for more details about POSIX paths:
    http://cygwin.com/cygwin-ug-net/using.html#using-pathnames

D:\hehuan_test>

1.4 启动rsync服务

  1. 按如下方式打开services.msc
  2. 设置结果如下:

3. linux同步到windows

3.1 准备工作

  1. 连接测试
[root@node ~]#
[root@node ~]# telnet 192.168.*.* 873
Trying 192.168.*.*...
Connected to 192.168.*.*.
Escape character is '^]'.

如上表示连接成功;如果连接失败,可能是防火墙的问题,关闭两边的防火墙或防火墙开启873端口

  1. 安装rsync
[root@node ~]#
[root@node ~]# yum install -y rsync.x86_64
[root@node ~]#
  1. 创建password文件
[root@node ~]# 
[root@node ~]# cat /etc/rsyncd.password 
apache
[root@node ~]# 
[root@node ~]# chmod 600 /etc/rsyncd.password 
[root@node ~]#

3.2 同步

[root@node ~]#
[root@node ~]# rsync -avz /data/minio/hnjgzd/uploadFiles/ apache@192.168.*.*::rsync_linux246 --delete --progress --include '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]' --include '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]' --include '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]' --exclude '/*' --password-file=/etc/rsyncd.password
sending incremental file list
./
......省略......
sent 160,824,910 bytes  received 10,715 bytes  7,480,726.74 bytes/sec
total size is 165,640,562  speedup is 1.03
[root@node ~]#

3.3 配合inotifywait实时同步

  1. inotifywait的安装
[root@node ~]# 
[root@node ~]# yum install -y epel-release.noarch
[root@node ~]#
[root@node ~]# yum install -y inotify-tools
[root@node ~]#
  1. rsync.sh同步脚本的编写
[root@node ~]# 
[root@node ~]# cat rsync.sh 
#!/usr/bin/env bash

source_dir=/data/minio/hnjgzd/uploadFiles/

/usr/bin/inotifywait -mrq --timefmt '%y-%m-%d %H:%M' --format '%T %w %f %e' -e create,attrib,modify,delete ${source_dir} | while read date time dir file type
do

/usr/bin/rsync -avz ${source_dir} apache@192.168.*.*::rsync_linux246 --delete --progress --include '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]' --include '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]' --include '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]' --exclude '/*' --password-file=/etc/rsyncd.password

echo "时间: ${date} ${time}, 文件: ${dir}${file}, 改变类型: ${type}, 已完成同步" >> /root/rsync_file.log

done
[root@node ~]#
  1. 同步脚本的启动
[root@node ~]# 
[root@node ~]# nohup sh /root/rsync.sh >> /root/rsync.log 2>&1 &
[root@node ~]#
  1. 文件同步初始化的触发
[root@node uploadFiles]#
[root@node uploadFiles]# pwd
/data/minio/hnjgzd/uploadFiles
[root@node uploadFiles]#
[root@node uploadFiles]# touch test.txt
[root@node uploadFiles]#
[root@node uploadFiles]# rm test.txt -f
[root@node uploadFiles]#

4. windows同步到windows

4.1 下载和解压

  1. 下载

客户端的下载链接

安装文件位置如下图所示

rsync 没有日志 rsync for windows_rsync 没有日志_04

2. 解压

解压后就可以直接使用了

4.2 连接测试

C:\Users\dell>
C:\Users\dell>telnet 192.168.*.* 873
C:\Users\dell>

如果连接失败,可能是防火墙的问题,关闭两边的防火墙或防火墙开启873端口

4.3 password文件

  1. 创建password文件, 目录为:D:\hehuan_test\rsync_workspace\rsyncd_client.password
  2. rsyncd_client.password文件内容为:apache

4.4 同步脚本

脚本路径:D:\hehuan_test\rsync_workspace\rsync.bat

脚本内容如下:

%date% %time%

d:

d:\hehuan_test\cwRsyncClient_6.2.1\bin\rsync -avz data/hnjgzd/uploadFiles/ apache@192.168.*.*::rsync_windows242 --delete --progress --include '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]' --include '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]' --include '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]' --exclude '/*' --password-file=d:\hehuan_test\rsync_workspace\rsyncd_client.password

%date% %time%

4.5 定时任务计划创建

  1. 按如下方式打开compmgmt.msc
  2. 新建定时任务执行计划
  3. 常规设置

rsync 没有日志 rsync for windows_cwRsync_05

  1. 触发器设置
  2. rsync 没有日志 rsync for windows_文件同步_06


  3. rsync 没有日志 rsync for windows_rsync_07

  4. 操作设置
    程序或脚本框填写的内容:D:\hehuan_test\rsync_workspace\rsync.bat >> D:\hehuan_test\rsync_workspace\rsync.log
  5. rsync 没有日志 rsync for windows_rsync 没有日志_08

    rsync 没有日志 rsync for windows_linux_09

  6. 定时执行计划设置完成
  7. rsync 没有日志 rsync for windows_cwRsync_10