服务器使用Rclone挂载OneDrive

AI摘要:本文介绍了使用Rclone挂载OneDrive的步骤。首先,通过脚本安装Rclone。然后,在Rclone中配置OneDrive,包括填写名称、选择要挂载的网盘、输入client_id和client_secret,选择OneDrive区域等。接下来,需要在本地电脑上获取授权码,并将授权信息复制到Linux终端。然后,选择OneDrive的类型,并根据提示输入序号和确认账户信息。最后,创建一个文件夹用于挂载,然后运行命令将OneDrive挂载到VPS上。文章还介绍了如何创建OneDrive API,包括获取client_id和client_secret,并添加相应的权限和身份验证。通过这些步骤,可以成功挂载OneDrive并使用API进行相关操作。

一、安装 rclone

使用脚本下载安装 Rclone:

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

1.在 rclone 中配置 OneDrive

rclone config

输入 n 创建一个新配置

然后填一个名称,例如onedrive,会要求选择要挂载的网盘,找到 Microsoft OneDrive 并输入其前面的序号,接下来会要求输入 client_id 和 client_secret。然后会出现 OneDrive 区域选择,如下:

Choose national cloud region for OneDrive.
Enter a string value. Press Enter for the default ("global").
Choose a number from below, or type in your own value
 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"

可以直接输入 1 选择全球

然后是选择是否进行高级配置,如下:

dit advanced config? (y/n)
y) Yes
n) No (default)

可以输入 n ,

接着是自动配置选择,如下:

Remote config
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

可以输入 n ,

这里需要获取授权码:

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 below:

授权码需要在本地电脑上获取,访问 rclone 根据你的电脑系统版本下载对应的 Rclone。

下载完成后解压,进入存放 Rclone 的目录,打开 Powershell ,Rclone 放在 D:\下载\rclone-v1.67.0-windows-amd64 ,输入:

cd D:\下载\rclone-v1.67.0-windows-amd64

在存放 Rclone 的目录可以看到 rclone.exe 的可执行程序,输入:

./rclone authorize "onedrive"

浏览器应该会自动打开,如果浏览器没有打开可以根据提示复制地址访问。如果浏览器登录了 OneDrive 的话会直接显示授权确认信息,如果没有登录的话会弹出登录页面,登录 OneDrive 后也会显示授权确认信息。

选择 接受 后在本地命令行会显示一串 JSON 格式的授权信息,复制授权信息包括首尾的 {} ,到 Linux 终端粘贴。

然后是选择 OneDrive 的类型,如下:

Choose a number from below, or type in an existing value
 1 / OneDrive Personal or Business
   \ "onedrive"
 2 / Root Sharepoint site
   \ "sharepoint"
 3 / Sharepoint site name or URL (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"
 7 / Sharepoint server-relative path (advanced, e.g. /teams/hr)
   \ "path"

输入 1

然后会显示找到的 OneDrive 账户,如下:

Found 1 drives, please select the one you want to use:
0: OneDrive (business) id=

根据提示输入序号,

这里会根据你输入的序号查找账户,如下:

Found drive 'root' of type 'business', URL: https://xxx-my.sharepoint.com/personal/changbin_xxx_onmicrosoft_com/Documents
Is that okay?
y) Yes (default)
n) No

确认无误后输入 y ,

接着会显示你选择的配置信息,确认无误后输入 y 保存配置。

二、挂载到 vps

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

mkdir /onedrive

开始挂载:

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

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

三创建 OneDrive API

1.获取 client_id

首先访问 Microsoft Azure 应用注册,登录账号后点击应用注册

注册

点击左上角的新注册

注册

如图所示进行配置,名称可以随便写,账户类型选择第三项

点击注册后可以看到你的应用的相关信息,复制好 应用程序 (客户端) ID ,这个就是 client_id

2.获取 client_secret

依次点击证书和密码,新客户端密码,在截止期限中将时间选择为最长(即两年)

然后就可以看见值和机密 ID,我们只需要记录下值就可以

3.添加 API 权限

依次点击 API 权限,添加权限,Microsoft Graph,在右边栏搜索并添加权限。

需要 Files.Read, Files.ReadWrite, Files.Read.All, Files.ReadWrite.All, offline_access, User.Read 这几项

注册

4.添加身份验证

依次点击身份验证,添加平台,Web

在重定向 URI 中输入 http://localhost

注册

OneDrive API 创建完成。

评论区
头像
萌ICP备20241104号 异次元之旅 本站支持SSL安全访问

本站已运行:

正在获取您的 IP 信息...
您是第位访问者