材料:一台VPS,带宽大流量多者优先,一个OneDrive账号
实验环境:centos7
1.安装Aria2
此处安装aria2使用P3TERX的一键安装脚本(自带上传功能)
在SSH运行下面的代码:
wget -N git.io/aria2.sh && chmod +x aria2.sh && ./aria2.sh
即可自动安装aira2
等待安装完成后,记下密钥,配置远程下载要用
此外,可以再次输入
./aria2.sh
打开脚本查看和修改aira2配置
2.利用AriaNG可视化
搭建宝塔面板,官网
在宝塔面板中新建网站,转到网站根目录,删除所有文件
访问AriaNG的发布地址,下载最新版本的AllinOne文件,并上传到网站根目录(或者直接用宝塔的远程下载)
此时访问网站绑定的域名应当能够看到AriaNG的界面,否则,检查服务器提供商处是否开启80端口
在宝塔面板和服务器商两处都开启6800端口(airaNG和aria2之间的通信端口)
ariaNG中按下图配置:
3.安装和配置Rclone
为了完成对rclone的配置,本地需要安装一个rclone,官网
下载对应文件,解压,进入文件夹,在资源管理器地址栏输入cmd,回车就会在当前路径打开命令提示符。输入以下命令:
rclone authorize "onedrive"
接下来会弹出浏览器,要求你登录账号进行授权。授权完后命令提示符窗口会出现以下信息:
If your browser doesn't open automatically go to the following link: http://127.0.0.1:53682/auth
Log in and authorize rclone for access
Waiting for code...
Got code
Paste the following into your remote machine --->
{"access_token":"xxxxxxxx"}
<---End paste
此时复制{xxxxxxxx}整个内容,并保存好,后面需要用到
服务器端,使用官方的一键安装脚本
curl https://rclone.org/install.sh | sudo bash
安装完成之后,输入
rclone config
开始配置,全程都有引导,选择n新建,名字随便起,例如onedrive,网盘种类选择onedrive,之后一路回车,到
Use auto config?
* Say Y if not sure
* Say N if you are working on a remote or headless machine
y) Yes
n) No
y/n> n
的时候选择n
然后会弹出
For this to work, you will need rclone available on a machine that has a web browser available.
Execute the following on your machine:
rclone authorize "onedrive"
Then paste the result below:
result> {"XXXXXXXX"}
将之前复制的结果贴到result后面
之后选1,按照实际情况选择编号,确认设置,按q退出
此时OneDrive已经设置好了,接下来是将其挂载到VPS上,安装fuse(依赖软件)
yum install -y fuse
然后新建一个文件夹作为你挂载的目标,例如
mkdir /home/onedrive
那么我的挂载命令就是:
rclone mount onedrive: /home/onedrive --allow-other --allow-non-empty --vfs-cache-mode writes
完成之后可以关闭会话
4.配置aria2下载后自动上传至OneDrive
注意此处是下载完成后自动上传,故一次性不能下大于硬盘容量的文件
输入
nano /root/.aria2c/aria2.conf
打开 Aria2 配置文件进行修改。找到“下载完成后执行的命令”,把clean.sh替换为upload.sh。
# 下载完成后执行的命令
on-download-complete=/root/.aria2c/upload.sh
nano 编辑器的操作方法参见《Linux 下适合新手的文本编辑器 nano 使用教程》
输入
nano /root/.aria2c/script.conf
打开附加功能脚本配置文件进行修改,有中文注释,按照自己的实际情况进行修改,第一次使用只建议修改网盘名称。
# 网盘名称(RCLONE 配置时填写的 name)
drive-name=onedrive
重启 Aria2 。脚本选项重启或者执行以下命令:
service aria2 restart