300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > Windows和Linux VPS/GDrive之间文件夹的实时单向/双向同步教程

Windows和Linux VPS/GDrive之间文件夹的实时单向/双向同步教程

时间:2024-04-13 01:29:12

相关推荐

Windows和Linux VPS/GDrive之间文件夹的实时单向/双向同步教程

说明:一般我们同步Windows和Linux之间的文件时,常用的方法有nfs挂载,inotify + rsync同步等,有钱的或许会买成熟的storenext系统,当然后者基本上都是公司在用,storenext由于价格太贵,个人使用基本可以无视,而nfs由于兼容性问题,在实际挂载中会出现很多小问题,算是inotify + rsync使用的比较多,不过鉴于前两天水过一篇Mutagen,博主发现用来实现Windows和Linux VPS之间双向同步的时候,速度还行,资源占用都不算很大,这里就大致水下使用方法,顺便也可以结合下Rclone,间接实现不挂梯子达到Windows和Gdrive双向同步的目的。

安装

Github地址:/mutagen-io/mutagen

说明:这里Windows使用Mutagen前提条件需要OpenSSH,而Windows 10内置OpenSSH,不过貌似mutagen目前不支持默认的SSH,所以就需要我们安装一个额外的OpenSSH了,官方是推荐Git for Windows的,里面自带OpenSSH客户端,我们可以手动下载安装→传送门,也可以使用其它方法安装,这里博主就使用比较简单的Scoop命令行安装,好处就是安装和卸载都很方便。

以下方法适用于以下系统:

Windows 10Windows Server R2Windows Server Windows Server R2SP1Windows 8.1Windows 7SP1

复制

这里Windows 10可以跳过1、2步骤;其它系统需要进行1、2步骤升级到PowerShell 5。

1、安装.NET Framework 4.5.2

#下载地址/en-us/download/details.aspx?id=42642

复制

2、安装Management Framework 5.1

#下载地址/en-us/download/details.aspx?id=54616##对应的系统下载包名#Win 64位W2K12-KB3191565-x64.msu #Win 7和Win R264位Win7AndW2K8R2-KB3191566-x64.zip #Win 732位Win7-KB3191566-x86.zip #Win 8.1和Win R264位Win8.1AndW2K12R2-KB3191564-x64.msu#Win 8.132位Win8.1-KB3191564-x86.msu

复制

都安装完成后记得重启电脑生效。

3、安装Scoop先在电脑左下角程序搜索框输入PowerShell,然后双击Windows PowerShell工具,再使用命令:

iex(new-object net.webclient).downloadstring('https://get.scoop.sh')

复制

如果安装不上,可能还需要更改执行策略,使用命令:

Set-ExecutionPolicy RemoteSigned -scope CurrentUser

复制

出现提示,选择Y即可,然后再重新执行上面的命令安装Scoop。

4、安装Git

scoop install git

复制

5、下载Mutagen

#先在D盘根目录新建mutagen文件夹mkdir D:\mutagen#替换下面最新版的Windows二进制文件地址,查看地址:/mutagen-io/mutagen/releases$ws = New-Object Net.WebClient$url ="/mutagen-io/mutagen/releases/download/v0.10.0/mutagen_windows_amd64_v0.10.0.zip"#设置下载路径,默认D盘根目录mutagen文件夹$downdir ="D:\mutagen\mutagen.zip"#开始下载,这里挂梯子下载貌似会快些$ws.DownloadFile($url,$downdir)#解压文件Expand-Archive -Path D:\mutagen\mutagen.zip -DestinationPath D:\mutagen

复制

这里除了可以在PowerShell使用命令下载,还可以直接使用浏览器下载压缩包,然后在D盘新建mutagen文件夹,并解压到该文件夹即可。

同步到VPS服务器

这里我们需要先设置一个变量MUTAGEN_SSH_PATH,指向SSH、SCP可执行文件目录,不然会无法识别SSH可执行文件。

$env:MUTAGEN_SSH_PATH="$env:GIT_INSTALL_ROOT\usr\bin"

复制

比如我要同步本地D盘根目录的BACK文件夹和远程Linux服务器的/moerats文件夹,使用命令:

#双向同步,创建会话为rats,D:\BACK为BACK文件夹绝对路径D:\mutagen\mutagen.exe sync create --name=rats D:\BACK root@远程服务器ip:ssh端口:/moerats#单向同步,创建会话为rats,D:\BACK为BACK文件夹绝对路径D:\mutagen\mutagen.exe sync create --name=rats -m one-way-safe D:\BACK root@远程服务器ip:ssh端口:/moerats

复制

如果期间遇到提示,选择yes,第一次可能会多要你输入几次服务器密码。

同步到GDrive网盘

提示:这里挂载网盘的同步参数会比上面多个--probe-mode=assume,不然远程会不停的产生很多缓存文件。

复制

首先在VPS上使用rclone挂载Google Drive网盘,挂载教程→传送门,当然这里挂载OneDrive什么也是可以的,不过没啥必要,毕竟有OneDrive客户端。

接下来设置一个变量MUTAGEN_SSH_PATH,指向SSH、SCP可执行文件目录,不然会无法识别SSH可执行文件。

$env:MUTAGEN_SSH_PATH="$env:GIT_INSTALL_ROOT\usr\bin"

复制

比如我要同步本地D盘根目录的BACK文件夹和远程Linux服务器挂载Gdrive网盘的/moerats文件夹,使用命令:

#双向同步,创建会话为rats,D:\BACK为BACK文件夹绝对路径D:\mutagen\mutagen.exe sync create --name=rats --probe-mode=assume D:\BACK root@远程服务器ip:ssh端口:/moerats#单向同步,创建会话为rats,D:\BACK为BACK文件夹绝对路径D:\mutagen\mutagen.exe sync create --name=rats -m one-way-safe --probe-mode=assume D:\BACK root@远程服务器ip:ssh端口:/moerats

复制

如果期间遇到提示,选择yes,第一次可能会多要你输入几次服务器密码。

具体的使用命令可以查看→传送门,基本上都差不多。注意电脑每次重启后,都需要重新设置变量和创建一个同步会话,即重复同步步骤即可。

如有侵权,请联系 cloudcommunity@ 删除

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。