aria2+rclone实现OneDrive等离线下载教程
Aria2简介
-
Aria2完美配置是一套Aria2配置方案,包括配置文件、附加函数脚本等文件。用于增强和扩展Aria2的功能,提高Aria2的下载速度和体验,解决Aria2在使用中遇到的BT下载慢、残留文件占用磁盘空间等问题。
-
功能特性
- BT下载率高,速度快
- 不会丢失任务进度,重启后继续下载
- 下载错误或取消下载自动删除未完成的文件,以防止磁盘空间占用
- 下载后,带有aria2后缀的文件将被自动清除
- 一键访问BT tracker进一步提高BT下载速度
- 更好的PT下载
- 有一定的防止版权投诉和迅雷吸血的作用
- 联动RCLONE自动上传到OneDrive和Google Drive等网盘
Aria2部署
- 依赖
apt install wget curl ca-certificates git #debian
yum install wget curl ca-certificates git #centos
- 部署
git clone https://github.com/P3TERX/aria2.sh
cd aria2.sh && chmod +x aria2.sh
./aria2.sh
显示:
Aria2 一键安装管理脚本 增强版 [v2.7.4] by P3TERX.COM
0. 升级脚本
———————————————————————
1. 安装 Aria2
2. 更新 Aria2
3. 卸载 Aria2
———————————————————————
4. 启动 Aria2
5. 停止 Aria2
6. 重启 Aria2
———————————————————————
7. 修改 配置
8. 查看 配置
9. 查看 日志
10. 清空 日志
———————————————————————
11. 手动更新 BT-Tracker
12. 自动更新 BT-Tracker
———————————————————————
Aria2 状态: 已安装 | 已启动
自动更新 BT-Tracker: 未开启
请输入数字 [0-12]:
选 1
安装完成后,Aria2 一键安装管理脚本将显示您的配置信息,并将其记录下来。
- 简单使用
如果显示一直不能连接,在宝塔安全放行6800端口,就可以成功了连接~
可以添加一个下载任务,就能看到Aria2 离线下载进度了。
Aria2 离线下载最大的速度取决你的VPS主机的带宽,主机商不会让你长期占满带宽。
如果你发现离线下载BT没有速度,请打开Aria2自动更新种子功能。
启动:/etc/init.d/aria2 start | service aria2 start
停止:/etc/init.d/aria2 stop | service aria2 stop
重启:/etc/init.d/aria2 restart | service aria2 restart
配置文件路径:/root/.aria2c/aria2.conf (配置文件有中文注释,若语言设置有问题会导致中文乱码)
默认下载目录:/root/downloads
Aria2 默认已经自带了Aria2NG了,打开: http://ariang.js.org/#xxxx那一串地址 ,就可以进入Aria2 离线下载界面了。
可以配合edge插件使用
安装Rclone
如果单纯的想要使用aria2功能,到这就可以停止了。
- Rclone介绍
Rclone是一个新的命令行工具,支持不同对象存储和网盘之间的数据同步、上传和下载。并且通过一些设置可以实现离线下载、服务器备份等一些实用功能。这里以OneDrive为例进行连接配置,其他网盘的操作也类似。因为是交互配置选项,只要你能看懂,基本没有难度。 - 安装Rclone
curl https://rclone.org/install.sh | sudo bash
- Rclone 连接 OneDrive
- 获取 token
在本地Windows电脑上下载rclone win版,然后解压。解压后,在资源管理器的地址栏输入cmd,按enter键在当前路径打开命令提示符。输入以下命令:
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"} # 注意!复制{xxxxxxxx}整个内容,并保存好,后面需要用到
<---End paste
- 配置 Rclone
rclone config
- 会出现以下信息,请参考以下操作。
[温馨提示:由于RCLONE会不定期更新,所以看到本教程时,菜单选项可能会略有变化,但总体思路不会改变。不要复制]{.red}
root@tcilay-desktop:/home/deb/aria2.sh# rclone config
No remotes found, make a new one?
n) New remote
s) Set configuration password
q) Quit config
n/s/q> n
选n
Enter name for new remote.
name> onedrive
输入 onedrive
Option Storage.
Type of storage to configure.
Choose a number from below, or type in your own value.
1 / 1Fichier
\ (fichier)
2 / Akamai NetStorage
\ (netstorage)
3 / Alias for an existing remote
\ (alias)
4 / Amazon Drive
\ (amazon cloud drive)
5 / Amazon S3 Compliant Storage Providers including AWS, Alibaba, Ceph, China Mobile, Cloudflare, ArvanCloud, Digital Ocean, Dreamhost, Huawei OBS, IBM COS, IDrive e2, Lyve Cloud, Minio, Netease, RackCorp, Scaleway, SeaweedFS, StackPath, Storj, Tencent COS and Wasabi
\ (s3)
6 / Backblaze B2
\ (b2)
7 / Better checksums for other remotes
\ (hasher)
8 / Box
\ (box)
9 / Cache a remote
\ (cache)
10 / Citrix Sharefile
\ (sharefile)
11 / Combine several remotes into one
\ (combine)
12 / Compress a remote
\ (compress)
13 / Dropbox
\ (dropbox)
14 / Encrypt/Decrypt a remote
\ (crypt)
15 / Enterprise File Fabric
\ (filefabric)
16 / FTP
\ (ftp)
17 / Google Cloud Storage (this is not Google Drive)
\ (google cloud storage)
18 / Google Drive
\ (drive)
19 / Google Photos
\ (google photos)
20 / HTTP
\ (http)
21 / Hadoop distributed file system
\ (hdfs)
22 / HiDrive
\ (hidrive)
23 / Hubic
\ (hubic)
24 / In memory object storage system.
\ (memory)
25 / Internet Archive
\ (internetarchive)
26 / Jottacloud
\ (jottacloud)
27 / Koofr, Digi Storage and other Koofr-compatible storage providers
\ (koofr)
28 / Local Disk
\ (local)
29 / Mail.ru Cloud
\ (mailru)
30 / Mega
\ (mega)
31 / Microsoft Azure Blob Storage
\ (azureblob)
32 / Microsoft OneDrive
\ (onedrive)
33 / OpenDrive
\ (opendrive)
34 / OpenStack Swift (Rackspace Cloud Files, Memset Memstore, OVH)
\ (swift)
35 / Pcloud
\ (pcloud)
36 / Put.io
\ (putio)
37 / QingCloud Object Storage
\ (qingstor)
38 / SSH/SFTP
\ (sftp)
39 / Sia Decentralized Cloud
\ (sia)
40 / Storj Decentralized Cloud Storage
\ (storj)
41 / Sugarsync
\ (sugarsync)
42 / Transparently chunk/split large files
\ (chunker)
43 / Union merges the contents of several upstream fs
\ (union)
44 / Uptobox
\ (uptobox)
45 / WebDAV
\ (webdav)
46 / Yandex Disk
\ (yandex)
47 / Zoho
\ (zoho)
48 / premiumize.me
\ (premiumizeme)
49 / seafile
\ (seafile)
Storage> 32
输入 32
Option client_id.
OAuth Client Id.
Leave blank normally.
Enter a value. Press Enter to leave empty.
client_id>
直接回车
Option client_secret.
OAuth Client Secret.
Leave blank normally.
Enter a value. Press Enter to leave empty.
client_secret>
直接回车
Option region.
Choose national cloud region for OneDrive.
Choose a number from below, or type in your own string value.
Press Enter for the default (global).
1 / Microsoft Cloud Global
\ (global)
2 / Microsoft Cloud for US Government
\ (us)
3 / Microsoft Cloud Germany
\ (de)
4 / Azure and Office 365 operated by 21Vianet in China
\ (cn)
region> 1
选1
Edit advanced config?
y) Yes
n) No (default)
y/n> n
选n
Use auto config?
* Say Y if not sure
* Say N if you are working on a remote or headless machine
y) Yes (default)
n) No
y/n> n
选n
Option config_token.
For this to work, you will need rclone available on a machine that has
a web browser available.
For more help and alternate methods see: https://rclone.org/remote_setup/
Execute the following on the machine with the web browser (same rclone
version recommended):
rclone authorize "onedrive"
Then paste the result.
Enter a value.
config_token> {xxxxxxxxxx}
输入前面的{xxxxxxxxxx}
Option config_type.
Type of connection
Choose a number from below, or type in an existing string value.
Press Enter for the default (onedrive).
1 / OneDrive Personal or Business
\ (onedrive)
2 / Root Sharepoint site
\ (sharepoint)
/ Sharepoint site name or URL
3 | E.g. mysite or https://contoso.sharepoint.com/sites/mysite
\ (url)
4 / Search for a Sharepoint site
\ (search)
5 / Type in driveID (advanced)
\ (driveid)
6 / Type in SiteID (advanced)
\ (siteid)
/ Sharepoint server-relative path (advanced)
7 | E.g. /teams/hr
\ (path)
config_type> 1
选1
Option config_driveid.
Select drive you want to use
Choose a number from below, or type in your own string value.
Press Enter for the default (xxxxxxxxxx).
1 / OneDrive (business)
\ (xxxxxxxx)
config_driveid> 1
选1
Drive OK?
Found drive "root" of type "business"
URL: xxxxxx
y) Yes (default)
n) No
y/n> y
选 y
Configuration complete.
Options:
- type: onedrive
- token: {xxxxxxxxxxx}
- drive_id: xxxxxxx
- drive_type: business
Keep this "onedrive" remote?
y) Yes this is OK (default)
e) Edit this remote
d) Delete this remote
y/e/d> y
选 y
Current remotes:
Name Type
==== ====
onedrive onedrive
e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q> q
选 q
- 至此,Rclone 已成功连接到了 OneDrive 网盘。
- rclone命令语法
rclone [功能选项] <本地路径> <网盘名称:路径> [参数] [参数] ... #本地到网盘
rclone [功能选项] <网盘名称:路径> <本地路径> [参数] [参数] ... #网盘到本地
rclone [功能选项] <网盘名称:路径> <网盘名称:路径> [参数] [参数] ... #网盘到网盘
rclone选项
rclone copy - 复制
rclone move - 移动,如果要在移动后删除空源目录,请加上 --delete-empty-src-dirs 参数
rclone sync - 同步:将源目录同步到目标目录,只更改目标目录。
rclone size - 查看网盘文件占用大小。
rclone delete - 删除路径下的文件内容。
rclone purge - 删除路径及其所有文件内容。
rclone mkdir - 创建目录。
rclone rmdir - 删除目录。
rclone rmdirs - 删除指定灵境下的空目录。如果加上 --leave-root 参数,则不会删除根目录。
rclone check - 检查源和目的地址数据是否匹配。
rclone ls - 列出指定路径下的所有的文件以及文件大小和路径。
rclone lsl - 比上面多一个显示上传时间。
rclone lsd 列出指定路径下的目录
rclone lsf - 列出指定路径下的目录和文件
配置自动上传脚本
- 输入以下命令打开 Aria2 配置文件进行修改
vim /root/.aria2c/aria2.conf
或使用Aria2 一键安装管理脚本 增强版中的手动修改选项打开配置文件进行修改。找到“下载完成后执行的命令”,把clean.sh替换为upload.sh。
on-download-complete=/root/.aria2c/upload.sh
nano /root/.aria2c/script.conf
有中文注释,按照自己的实际情况进行修改,第一次使用只建议修改网盘名称。
网盘名称(如上面教程中RCLONE 配置时填写的onedrive的name为onedrive)
drive-name=onedrive
重启 Aria2 。脚本选项重启或者执行以下命令:
service aria2 restart
检查配置是否成功
执行upload.sh脚本,提示成功即时上传脚本可以正常调用,否则请检查RCLONE相关的配置。
/root/.aria2c/upload.sh
打开实时日志并下载任何文件。如果出现上传成功消息,则配置成功。否则,请仔细阅读教程,重新开始。
检查网盘上是否有相关文件。如果没有,你网盘搞错了。