(这些整合的)教程适宜人群:
(和我一样)几乎不懂linux,只能靠傻瓜教程搭建最基本服务的。
(和我一样)又懒得/没时间学linux和网络基础知识的。更别提会docker了。
(和我一样)英语初二左右水平,能对照着傻瓜教程注册 backblaze b2服务的。
(和我一样)有信用卡/虚拟信用卡,或者只用 backblaze b2 每天1G免费流量的。
(和我一样)宁可他妈多花钱也不愿意用各种残疾网盘(包括但不限于 吸血雷 百毒 115535 )那连office都下载不了的所谓 “离线下载” 功能的。
(和我一样)就是他妈觉得不服的。而且明白 “自由要靠自己努力争取” 这个道理的。
那么我们开始。
思路是:主机通过 aria2 实现离线下载,然后使用 rclone 同步到 backblaze b2。然后再从b2同步回本地下载机。
后面还没弄 >>> 给本地下载机(虚拟机)开启SMB,最后把下好的东西扔到NAS里面。
实际上,如果你网络够好,听说可以通过nginx反向代理走流量,就不用折腾网盘了。我没文化,不会弄。
准备工作:
主机一台
最好是kvm的,听说有些整合版的aria2不支持openvz。
买之前记得看看,是不是允许p2p,以及 版权/抗投诉 相关的情况。后面会就此多说两句。
测试用的VPS我选择了 shinjiru 的马来西亚主机。
因为abelohost不让我买(好像是被骑士了。另外一个故事)。
测试系统为 ubuntu20.04
1G / 25G 流量20T 随便跑点儿什么CPU都会爆,不要多想。
14.9刀/月 首次下单似乎有优惠。
测速 上下都在400M左右。晚间测试 上下只有100M左右。比如符合实际使用体验。
(speedtest只能安装cli版本,我也不知道为什么)
他们家主机SSH默认端口不在22。可以通过novnc进去(延迟三四百吧,极慢)查看SSH端口。
netstat -anp |grep ssh
而且(似乎只能)需要手动输入密码。好在知道端口后,重装系统并不会改变端口。
顺手安装一下 curl 反正后面用得上
apt-get update
apt-get install curl
开放端口
https://www.jianshu.com/p/2ec5d16db02b
在这个场合下,需要
6800(aira2)
80 443(网页,不过https 的我还没测试)
8080(FileBrowser)
(6800不是很确定,需进一步测试)
apt-get install iptables
apt-get install iptables-persistent
iptables -I INPUT -p tcp –dport 80 -j ACCEPT
iptables -I INPUT -p tcp –dport 8080 -j ACCEPT
iptables -I INPUT -p tcp –dport 443 -j ACCEPT
iptables -I INPUT -p tcp –dport 6800 -j ACCEPT
iptables-save
netfilter-persistent save
netfilter-persistent reload
B2账号一个
需要提供API的账号和key。
安装与配置:
安装 aria2 整合
在做功课的过程中,我有看到整合好的docker版本。但是因为我太土逼,根本不会。于是选了一个稍微粗鄙一点的版本(后面会说一下为什么粗鄙)。
https://github.com/Masterchiefm/Aria2Dash
bash <(curl -s -L https://raw.githubusercontent.com/Masterchiefm/Aria2Dash/master/Aria2Dash.sh)
配置
aria2dash
这里面都是中文的。设个密码吧。
改完密码需要重启一下服务(有时候重启一次还不行,原因不明)。
剩下的就都是网页操作了。填上密码就能用了。如果连不上,可以看这个。
https://bbs.deepin.org/zh/post/227198
如果需要更改下载存放路径,似乎需要手动新建目录。
magnet是先下载种子,然后自动开始下载里面的所有文件。如果想进行变更,要先暂停。这个功能实在有点儿不方便。
BT种子的话,选手动开始,然后选好文件,就没这么多事儿了。
之所以说粗鄙,就是里面有个什么返利多的教程。那里面用了某V家的主机做测试。暂且不说那种所谓的“白嫖”是不是招人讨厌,那家的主机是管版权的,而且不让P2P,给人一种“我也能170M”的错觉。虽然说原作者没责任和义务管三方的教程,但是你把这种教程的链接放在你的主页上——像这种完全……无中生有的东西,你再帮他说一遍,你等于…这个东西…你…你也有责任吧。
安装配置rclone
https://www.vpslala.com/t/343
注意他这个教程里面漏字了,不要傻傻复制,看着点儿。
curl https://rclone.org/install.sh | sudo bash
后面发现其实apt也能装……
配置用
rclone config
不同版本添加预设的编号会不同,也是自己看着点儿。
测试(我把原教程的例句翻译一下)
rclone ls 预设名称:桶名称
rclone sync -v 被复制的目录 (被同步的目的地)预设名称:桶名称/
这个-v是看进度用的
教程原文写得还算清楚。不过有一点,千万千万注意!这个sync功能是可以双向的。也就是说,把你B2桶里面的东西同步到你本地。
如果操作不当,因为同步时候会先检查多余的文件,甚至可以直接把你服务器某个目录直接清空了……
我就犯过这个傻……
如果是同步回来,那就是
rclone sync -v 预设名称:桶名称 本地目录
一些补遗
1:为了方便文件整理,可以考虑安装远程桌面。
还是参考之前海风老师建议的教程。
https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-vnc-on-ubuntu-20-04
要注意的是,用root的话,步骤4里面,跟随系统自动启动的功能好像不能这么配置。具体的我就不会了。
2:浏览器用midori即可。可以实现B2的基本上传下载功能。注意网页端上传限制是单文件500M,偶尔用一次也不是不行。
https://rzldn.com/article/484696/
其实,直接
apt-get install midori
即可
3:同步时候可以考虑用screen。不然你老在那儿挂个SSH也是挺蛋疼的。
4:可能因为机器配置太低,ubuntu(仅测试了桌面版的7Z)自带的压缩,压缩的速度非常慢,一用CPU就直接百分百。如果非要用,要有心理准备。或许换成tar什么的会好一点儿。
5:关于rclone与B2之间是否使用https传输(因为GDRIVE是的),也有老外在讨论。我特此摸了一下儿wireshark,并且跟专业人士请教了一下。
https://forum.rclone.org/t/is-rclone-using-https-protocol/2433
目前的结论是:是。因为可以抓到tls相关的tcp握手和应用流量。但不是百分百确定,百分之九十九吧……
如果你用群晖(我实在是不想用),还有个cloud sync可以用。但是我没用过,不评价。
6:我有测试一下resilio sync。理论上说,其实这样就可以同步了。
(卧槽他这个好牛逼,复制过来自己就跳出来链接了,我都不知道他怎么弄的)
但是在实际测试中发现,挂了北美梯子,速度只有200-500K,不知道是不是和多加密了一次有关系。直连的话,0-300K,而且老断,根本没法用。
到这里,所有测试都都结束了。再往下就是一些落地的工作了。包括本地下载机的配置与SMB,远程主机挂载存储。
请不要期待下篇。我为这一篇已经折腾四天了……