安装Gclone
Gclone是downwa大佬根据Rclone的魔改版,支持自动替换及使用SA账户功能。你也可以直接使用Rclone官方版。在这里,我将使用Gclone作为演示。
bash <(wget -qO- https://git.io/gclone.sh)
##方便使用gclone直接改名rclone
cp /usr/bin/gclone /usr/bin/rclone配置Rclone
连接Onedrive
rclone config
输入 n 回车新建配置
输入配置名称,例如:Onedrive
选择 23 Microsoft OneDrive并回车『在此教程时,Onedrive为23选项,请根据实际情况选择』
获取并使用自己的Client ID 和 Key
Client ID 和 Key,请直接回车跳过,下面是获取自己 Client ID 和 Key 的步骤打开 https://portal.azure.com/#blade/Microsoft_AAD_RegisteredApps/ApplicationsListBlade 并点击 New registration
为创建的APP输入一个名称,类型选择 Accounts in any organizational directory (Any Azure AD directory - Multitenant) and personal Microsoft accounts (e.g. Skype, Xbox) , Redirect URI 选择 web 并填入 http://localhost:53682/ 点击注册。
拷贝并粘贴 Application (client) ID 到命令行,并回车确认
选择左侧 Certificates & secrets 并点击 New client secret ;过期时间选择 Never 并输入一个自己想要的名称点击 Add「在最新版中,已无 Never 选项,你可自行设置一个自定义的时间即可」
拷贝并粘贴生成的密钥,只会显示一次,如果忘记了,请重新删除添加
选择左侧的 API permissions 并点击 Add a permission ;选择 Microsoft Graph – delegated permissions
搜索并添加如下权限: Files.Read, Files.ReadWrite, Files.Read.All, Files.ReadWrite.All, offline_access, User.Read. 全部勾选后,点击 Add permissions 完成后,应该如下图所示
将上面的Client ID and Secret分别粘贴到对应的Rclone需求步骤即可
接着我们回到配置Rclone的过程,输入 n 并回车跳过高级设置
- 如果你是在本地机器配置 [有浏览器的机器]:输入
y并回车,登录账户进行授权,如果浏览器没有自动打开,请复制给到的网址并手动打开访问授权 - 如果你是在VPS服务器上配置 [没有GUI界面及浏览器]:输入
n并回车,按提示下载Rclone程序到本地解压并在Rclone所在文件夹CMD命令行运行rclone authorize "onedrive" -- "替换为你的client id" "替换为你的client secret",在跳出的浏览器页面登录账户授权
例如在Windows平台下,你可以通过在Rclone所在文件夹内的地址栏输入 cmd 并回车来运行相关命令
复制整个 {} 内的内容并粘贴到rclone配置步骤回车
{"access_token":"xxxxxx","token_type":"Bearer","refresh_token":"xxxxxx","expiry":"xxxxxx"}输入 1 并回车选择 OneDrive Personal or Business
选择程序找到的网盘,输入对应的序号并回车『一般为 0』
输入 y 并回车
输入 y 确认所有信息
常用命令
# 上传VPS本地文件到网盘
# 例如 rclone copy /root/storage/downloads Onedrive:/Temp -P
rclone copy /本地文件地址 目标配置名称:/目标储存地址
# 两个网盘间互相拷贝
rclone copy 源配置名称:/源储存地址 目标配置名称:/目标储存地址
rclone copy GoogleDrive:/Public Onedrive:/Temp -P --ignore-existing- 使用
--ignore-existing标签去忽略已经存在的文件 - 使用
-P/--progress标签去实时观察传输进度情况 - 使用
--dry-run标签去测试运行「不会实际拷贝文件」 --drive-server-side-across-configs标签允许Google Drive服务端之间直接复制--onedrive-server-side-across-configs标签允许Onedrive服务端之间直接复制
--dry-run 标签测试一次命令,确认命令是否如期正确运行并拷贝文件并通读Rclone官方相关文档。其次,如果需要一次性拷贝大量文件,请使用Tmux或Screen等程序使其后台运行,否则在关闭SSH连接后,相关传输会断开参考链接
Rclone 配置 Microsoft OneDrive 官方教程









