通过WSL使用rsync同步本文件
1、安装WLS
主要参考Windows10上使用Linux子系统(WSL)这篇文章进行安装,不要通过lxrun /install /y去安装,这种方法安装貌似没有wsl命令。
先把win 10 版本升级到16215.0以上,否则在Microsoft Store里的所有Linux都会显示免费下载为不可点击,升级win 10参考Download Windows 10即可。
如在Microsoft Store里选择Ubuntu,安装完启动并设置用户密码便可使用。
Installing, this may take a few minutes...
Please create a default UNIX user account. The username does not need to match your Windows username.
For more information visit: https://aka.ms/wslusers
Enter new UNIX username: sandwich
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Installation successful!
2、rsync
配置rsync,/home/sandwich/rsyncd/rsyncd.conf中加入以下内容:
log file = /home/sandwich/rsyncd/rsyncd.log
port = 8730
use chroot = false
read only = false
[WINDOWS_PROJECT_RSYNC_PATH]
path = /home/sandwich/rsyncd/dest
通过以下命令即可启动rsync
rsync --daemon --config=/home/sandwich/rsyncd/rsyncd.conf --no-detach
测试rsync同步
C:\Users\sandwich>wsl rsync --port=8730 -rlptDvzHS --progress --delete /home/sandwich/rsyncd/source/ sandwich@127.0.0.1::WINDOWS_PROJECT_RSYNC_PATH
sending incremental file list
./
a.txt
5 100% 0.00kB/s 0:00:00 (xfr#1, to-chk=0/2)
sent 118 bytes received 42 bytes 320.00 bytes/sec
total size is 5 speedup is 0.03
3、脚本修改
删除32位的python,参考windows下,python3.6 32位、64位共存及开发工具vscode配置安装python 64位,32位无法通过shell_command调用wsl。
重新MySQL-python参考Windows 10安装Python 2.7和MySQL-python。
添加方法rsyncFiles用于同步,替换原来的copyFiles方法:
def rsyncFiles(source, target):
source_path = WSL_PROJECT_RSYNC_PATH + source + "/"
target_path = "sandwich@127.0.0.1::" + WINDOWS_PROJECT_RSYNC_PATH + target
shell_command("wsl rsync --port=8730 -rlptDvzHS --progress --delete " + source_path + " " + target_path)
4. 参考
rsync-server-using-windows-subsystem-for-linux
[python subprocess.call() cannot find Windows Bash.exe](https://stackoverflow.com/questions/39812882/python-subprocess-call-cannot-find-windows-bash-exe)
Windows and Ubuntu Interoperability
Windows 10安装Python 2.7和MySQL-python
windows下,python3.6 32位、64位共存及开发工具vscode配置
解决"pip Fatal error in launcher: Unable to create process using ... "的错误
通过WSL使用rsync同步本文件的更多相关文章
- Windows Linux 之间rsync同步CODE文件
Windows Linux 之间rsync同步CODE文件 一.环境Windows:OS:Microsoft Windows Web Server 2008 SP1IP:192.168.88.197 ...
- 使用rsync同步文件
rsync是Unix/Linux下同步文件的一个高效算法,它能同步更新两处计算机的文件与目录,并适当利用查找文件中的不同块以减少数据传输.关于rsync的核心算法,有兴趣的看下这篇文章. 这里介绍一下 ...
- rsync+sersync实现文件实时同步
前言: 一.为什么要用Rsync+sersync架构? 1.sersync是基于Inotify开发的,类似于Inotify-tools的工具 2.sersync可以记录下被监听目录中发生变化的(包括增 ...
- rsync 同步文件
rsync 同步文件 rsync -avz roo@192.168.4.12::/home/a ./a --exclude "data" exclude 去掉/a/data 文件 ...
- 【Linux】rsync同步文件 & 程序自启动
rsync使用 1. 为什么使用rsync? rsync解决linux系统下文件同步时, 增量同步问题. 使用场景: 线上需要定时备份数据文件(视频资源), 使用rsync完成每天的增量备份. 参见: ...
- 利用Inotify和Rsync将webproject文件自己主动同步到多台应用server
背景:须要搭建一套跟线上一模一样的环境,用来预公布,这是当中的web分发的一个小模块的实现过程. 1 工具以及环境简单介绍 1.1,Inotify工具 Inotify,它是一个内核用于通知用户空间程序 ...
- 用 rsync 同步本地和服务器的文件
参考 DigitalOcean 安装 For Debian/Ubuntu: sudo apt-get install rsync For OpenSUSE/Fedora: sudo yum insta ...
- rsync+inotify实现文件同步更新(配置)
linux下为了数据安全或者网站同步镜像,不得不考虑一些实时备份的问题,这篇linux下通过rsync+inotify 实现数据实时备份配置过程记录下来,防止遗忘配置过程记录下来,防止遗忘!如有建议技 ...
- Git版本控制,rsync同步文件,完成线上部署
之前项目开发完成,测试阶段,借着此时,由于公司暂时用两台aliyun ecs 做业务层,所以每次都需要同步线上文件,进而想着搞一搞服务器端(小公司,新项目,先小搞一把),搭建一套小的版本控制上线的 ...
随机推荐
- ElasticSearch——分词
前言: 最近在使用elasticSearch中发现有些数据查不出来,于是研究了一下,发现是分词导致的,现梳理并总结一下. ElasticSearch 5.0以后,string类型有重大变更,移除了st ...
- System.arraycopy() 数组复制方法
一.深度复制和浅度复制的区别 Java数组的复制操作可以分为深度复制和浅度复制,简单来说深度复制,可以将对象的值和对象的内容复制;浅复制是指对对象引用的复制. 二.System.arraycop ...
- java-创建对象实例
1.A a = new A(); 2.Class class = B.Class; B b = class .newInstance();
- 使用kubeadm安装kubernetes1.12.2版本脚本【h】
Master节点脚本: #!/bin/sh#使用系统的PATH环境export PATH=`echo $PATH` #停止firewall防火墙,并禁止开机自启动 systemctl stop fir ...
- Web工作方式
我们平时浏览网页的时候,会打开浏览器,输入网址后按下回车键,然后就会显示出你想要浏览的内容.在这个看似简单的用户行为背后,到底隐藏了些什么呢? 对于普通的上网过程,系统其实是这样做的:浏览器本身是一个 ...
- Redis二进制反转算法分析
在 redis 源码中 dictScan 算法中用到了用到了非常经典的二进制反转算法,该算法对二进制的反转高效而实用,同时对于理解位运算也有非常大的帮助.先呈现源码: /* Function to r ...
- kettle转换设置变量,校验输出新变量
背景:有很多小的转换需要串联起来,如果前一个执行成功,后面继续接着执行,如果执行等待中,就让程序等一会再次获取数据分析,如果失败就中止,成功就进行下一个转换,以此类推.... 需求:通过job把参数传 ...
- linux yum 使用epel源
由于CentOS6的系统安装了epel-release-latest-7.noarch.rpm 导致在使用yum命令时出现Error: xz compression not available问题. ...
- ASP.NET Core中使用Dapper
⒈添加 NuGet 包 Install-Package Dapper ⒉封装数据库类型 using System; using System.Collections.Generic; using Sy ...
- PAT B1001 害死人不偿命的(3n+1)猜想 (15)
AC代码 #include <cstdio> int main() { int n,step; scanf("%d", &n); while(n != 1) { ...