快捷菜单
常用功能一站直达
更多功能请点顶栏「快捷菜单」

[toc]
1linux服务器:centos7.9.2009 (rsync version 3.1.2 )
2win10 (cwRsync_4.1.0_Installer.exe)链接:https://pan.baidu.com/s/1Kkps6jeW5v8fcUQN7lcw5g?pwd=3w2g
提取码:3w2g
2023.11.30-rsync-winodws客户端软件

把linux某个目录数据同步到windows的某个目录下。
需求:
如何利用rsync实现从linux服务器同步数据到windows电脑上?
自己业务背景:
目前自己已经实现了利用ecs的nginx提供公网md图床。
但是,如何保证将ecs图床数据备份到本地windows呢,方便后续数据迁移?
因此rsync是一个非常优秀的选择方式。
预期目的
源服务器地址:47.97.48.237 centos7 目标服务器地址: windows 10 (自己内网pc)
以下步骤达到的效果:
将公网服务器47.97.48.237的/images/目录下的内容,同步到自己内网winodws pc的D/BaiduSyncdisk/cmi-MdImages-local路径下。
⚠️ 注意:
本次配置是在之前环境基础上配置的,之前自己的ecs已经配置好了rsync服务,本地windows pc也配置了,已经成功实现windows数据->linux数据同步了,具体链接可见下文:
https://wiki.onedayxyy.cn/docs/rsync-windows-to-linux

1#备份
2[root@hexo-blog ~]# cp /etc/rsyncd.conf /tmp/
3
4
5
6[root@mkdocs-server html]# vim /etc/rsyncd.conf
7# /etc/rsyncd: configuration file for rsync daemon mode
8# See rsyncd.conf man page for more options.
9# 进行通信的端口,如果 firewall 打开的话,需要将对应的端口添加进去
10port=8730
11# 日志文件
12log file=/var/log/rsync.log
13# rsync 的进程 id
14pid file=/var/run/rsync.pid
15
16
17##编辑
18[cmi-MdImages]
19# 同步的目标文件夹
20path=/test/
21# rsync daemon 在传输前是否切换到指定的 path 目录下,并将其监禁在内,用于增加传输的安全性
22use chroot=no
23# 指定最大的连接数
24max connections=4
25# yes 表示只读本地文件无法同步到服务器
26read only=no
27# 客户端请求显示模块列表时,该模块是否显示出来
28list=true
29# 服务运行时的用户
30uid=root
31# 服务运行时的用户组
32gid=root
33# 进行验证时的用户名,必须是系统存在的用户
34auth users = root
35# 连接用户时的密码
36secrets file=/etc/rsyncd.passwd
37# 允许的 ip
38hosts allow=*重启rsync服务:
1systemctl restart rsyncd1[root@hexo-blog ~]# mkdir /test
2[root@hexo-blog ~]# echo test > /test/1.txt
3[root@hexo-blog ~]# ll /test/1.txt
4-rw-r--r-- 1 root root 5 Nov 30 05:44 /test/1.txt1rsync.exe -avPzruh --delete --port 8730 --password-file=/cygdrive/D/password.txt root@47.97.48.237::cmi-MdImages/ /cygdrive/D/cmi-MdImages-local
虽然报错了,但是文件还是被同步下来了哦。(完美。)

1、新建D:\rsyncMdImages.bat文件,填入以下内容
1rsync.exe -avPzruh --port 8730 --password-file=/cygdrive/D/password.txt root@47.97.48.237::cmi-MdImages/ /cygdrive/D/BaiduSyncdisk/cmi-MdImages-local将该文件另存为rysnc.bat文件,编码为ANSI

注:如果编码为utf8,文本中的中文会出现乱码导致执行出错。
2、开启定时任务
批处理完成了,怎么来实现周期性的运行该脚本呢?windows自带了非常强大的定时任务功能。进入计算机管理(此电脑右键“管理”),在系统工具->任务计划程序->任务计划程序库中能看到你电脑所有的定时任务,右键可以创建基本任务。 (或者直接在cmd输入
compmgmt.msc)

按图中输入名称及描述,点击下一步设置触发器(任务触发时间)

点击下一步设置任务执行操作,这里选择启动程序


选择刚才制作的bat脚本,点击下一步

点击完成创建任务

选择刚创建的任务,右键点击属性打开属性对话框,点击触发器并双击已设置的触发器设置任务重复执行

点击确定完成定时任务设置,右击任务启动任务。
https://blog.csdn.net/qq_39007838/article/details/127562636

我的博客主旨:
🍀 微信二维码
x2675263825 (舍得), qq:2675263825。

🍀 微信公众号
《云原生架构师实战》

🍀 csdn
https://blog.csdn.net/weixin_39246554?spm=1010.2135.3001.5421

🍀 知乎
https://www.zhihu.com/people/foryouone

QQ群
《玩转Typora+Docusuaurus+起始页》交流群:(欢迎小伙伴一起探讨有趣的IT技术,来完成一些漂亮的项目)

开源项目:
https://wiki.onedayxyy.cn/docs/OpenSource

https://wiki.onedayxyy.cn/docs/typora




好了,关于本次就到这里了,感谢大家阅读,最后祝大家生活快乐,每天都过的有意义哦,我们下期见!

日历 · 精选 · 友链 · 更多
如果内容对你有帮助,欢迎请我喝杯咖啡 ☕



One的公众号
爱折腾博客的小白