跳到正文
MAKI分享
返回

VPS挂载 Aria2 + Rclone 实现Google Drive 离线下载

更新于:
MAKI

其实 rclone 挂载 Google Drive 网上的教程已经很多了,但是大多数的教程都有一点点过时,与现在的实际操作有一点出入,故整理了当前的挂载操作,以防忘记。

一、安装并配置rclone

rclone官方一键安装脚本:

 curl https://rclone.org/install.sh | sudo bash

安装完后,输入 rclone config 命令进入交互式配置选项

你会看见以下选项,选择 n ,新建一个配置

随意起一个名字

此时 rclone 会要你选择要挂载什么网盘,找到 google drive 并选择。PS:注意是 google drive

不要盲目跟着选择序号,可能会随着时间推移顺序变动,这里我是18,所以选择18。

选择后 rclone 会要求输入 client_id和client_secret,建议大家都用rclone提供的 开发者 id and sercert

rclone官方提供的client_id和client_secret可以生成长期稳定的token,个人申请的client_id和client_secret生成的token 7天后会过期,需要重新验证很麻烦。

rclone官方client_id:202264815644.apps.googleusercontent.com
rclone官方client_secret:X4Z3ca8xfWDb1Voo-F9a7ZxJ

这个可以根据需求选择,比如我要完整的访问权限,就选择 1

接下来

service_account_file 也为空,直接回车即可。

Edit advanced config 输入 n,不需要进行额外的高级配置。

If not sure try Y. If Y failed, try N,因为现在只能从本地获取api,所以我们选择 n

选择后会看见如下显示:

注意,接下来要在本地执行,

接下来在本地电脑上下载命令行操作的 rclone:

访问 rclone 下载地址,选择您的操作系统下载相应的 zip 包并解压。

rclone 压缩包解压后,你应该能看到一个 rclone.exe,类似下图:

打开终端,进入到此目录后执行 :

rclone authorize “drive”

不出意外的话,此时就要出意外了,发现怎么都等不到token,这是因为CMD 没有使用代理的原因

临时解决方法:(PS:由于我的客户端是 V2rayN 所以端口是10808,别的客户端请自行更换端口)

# 使用sock5代理
set http_proxy=socks5://127.0.0.1:10808
set https_proxy=socks5://127.0.0.1:10808

此时我们在执行上述命令,会自动打开浏览器进入到谷歌账号登录界面,此时一定要登录被挂载的谷歌账号,并选择同意授权,点击选择继续就能授权。

授权成功浏览器会提示 success

此时返回命令行,等待几秒就能看见授权的 code 了。

返回VPS,粘贴token并回车(PS:包含中括号和里面的内容一并粘贴进去)

接下来 rclone 会询问是否为团队盘,因为我是团队盘所以我选择 y

Keep this “gd” remote? 确定最开始的命名,我们选择 y

然后我们选择 q 保存

此时 rclone 就配置好了

二、挂载Google Drive

首先新建一个文件夹用于挂载:

mkdir /google

开始挂载:

rclone mount gd: /google --allow-other --allow-non-empty --vfs-cache-mode writes --daemon

其中 gdrive 是 rclone 配置时输入的配置名称,/google 是挂载目录,–daemon 是指后台运行。

此时可能会报错:

一般是因为缺少依赖导致的,我们选择安装

centos 系使用:

yum install -y fuse 
yum install -y fuse3

debian & ubuntu系使用:

apt install -y fuse 
apt install -y fuse3

再次执行挂载命令,如果没有报错,就是挂载成功了。

检查挂载:

df -h

可以看到 /google 已经成功挂载了

接下来进入 /google 进行一些简单的测试

cd /google
mkdir test
ls
rm -rf test

此时我们发现可以顺利执行,则说明挂载没有问题。

三、安装aria2

这里使用 Aria2 一键安装管理脚本 增强版,执行下面的代码下载并运行脚本,出现脚本操作菜单输入 1 开始安装。

wget -N git.io/aria2.sh && chmod +x aria2.sh && ./aria2.sh

输入nano /root/.aria2c/aria2.conf打开 Aria2 配置文件进行修改。或使用Aria2 一键安装管理脚本 增强版中的手动修改选项打开配置文件进行修改。找到“下载完成后执行的命令”,把clean.sh替换为upload.sh。修改以后输入 Ctrl+X 然后输入 Y 保存并 回车

# 下载完成后执行的命令
on-download-complete=/root/.aria2c/upload.sh

输入nano /root/.aria2c/script.conf打开附加功能脚本配置文件进行修改,有中文注释,按照自己的实际情况进行修改,第一次使用只建议修改网盘名称。修改以后输入 Ctrl+X 然后输入 Y 保存并 回车

# 网盘名称(RCLONE 配置时填写的 name)
drive-name=gd

如果你想把文件上传到网盘的具体目录:

# 网盘目录(上传目标目录,网盘中的文件夹路径)。注释或留空为网盘根目录,末尾不要有斜杠

drive-dir=/

比如我想把文件上传到网盘的Gdrive文件夹里,就是drive-dir=/Gdrive    修改以后输入 Ctrl+X 然后输入 Y 保存并 回车

最后,输入 /root/.aria2c/upload.sh 检查上传脚本是否配置成功,如果输出结果是success就表示配置成功。

输入./aria2.sh 按12. 自动更新 BT-Tracker   按6重启aria2使所有配置生效。

输入./aria2.sh 按8获取后台登录地址,随便找个热种下载测试下

下载完成后我们执行tail -f /root/.aria2c/aria2.log 发现正常上传,没有异常。

稍后我们发现谷歌云盘内也有了我们刚才下载的 Ubuntu 镜像文件。

Rclone用法示例

# 本地到网盘:
rclone [功能选项] <本地路径> <网盘名称:路径> [参数] [参数]
# 网盘到本地: 
rclone [功能选项] <网盘名称:路径> <本地路径> [参数] [参数] 
# 网盘到网盘: 
rclone [功能选项] <网盘名称:路径> <网盘名称:路径> [参数] [参数]

示例:
rclone move -v /data1/download gd:/gdrive --transfers=4 --min-size 500M
#含义:
将vps中/data1/download内的文件移动到,命名为gd(挂载云盘时取得名字)盘下的/gdrive目录,
4条任务并发,并且不会传输少于500M的文件

以上就是 VPS 挂载 Aria2 + Rclone 实现Google Drive 离线下载的全教程。


分享这篇文章:

上一篇
服务器重启后,nginx无法启动,报错!lua_shared_dict
下一篇
兰空图床域名失效更换记录

// 评论