OneDrive 挂载为本地磁盘Ubuntu

严斌
2023-12-01

1.首先需要自己注册申请OneDrive的网盘

2.安装rclone模块挂载网盘

   rclone没有ubuntu的安装库,所以一般状况下apt-get 无法直接安装,需要下载从https://rclone.org/downloads/下载

wget https://downloads.rclone.org/v1.46/rclone-v1.46-linux-amd64.deb


dpkg -i rclone-v1.46-linux-amd64.deb

3.配置OneDrive,允许外部api访问磁盘

   

Getting your own Client ID and Key

rclone uses a pair of Client ID and Key shared by all rclone users when performing requests by default. If you are having problems with them (E.g., seeing a lot of throttling), you can get your own Client ID and Key by following the steps below:

  1. Open https://apps.dev.microsoft.com/#/appList, then click Add an app (Choose Converged applications if applicable)
  2. Enter a name for your app, and click continue. Copy and keep the Application Id under the app name for later use.
  3. Under section Application Secrets, click Generate New Password. Copy and keep that password for later use.
  4. Under section Platforms, click Add platform, then Web. Enter http://localhost:53682/ in Redirect URLs.
  5. Under section Microsoft Graph PermissionsAdd these delegated permissionsFiles.ReadFiles.ReadWriteFiles.Read.AllFiles.ReadWrite.Alloffline_accessUser.Read.
  6. Scroll to the bottom and click Save.

  

4.配置rclone

rclone config
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> n    <------选择n
name> remote        <------挂载磁盘取名
Type of storage to configure.
Enter a string value. Press Enter for the default ("").
Choose a number from below, or type in your own value
...
17 / Microsoft OneDrive
   \ "onedrive"
...
Storage> 17         <------选择网盘类型
Microsoft App Client Id
Leave blank normally.
Enter a string value. Press Enter for the default ("").
client_id>          <------直接留空回车
Microsoft App Client Secret
Leave blank normally.
Enter a string value. Press Enter for the default ("").
client_secret>      <------直接留空回车
Edit advanced config? (y/n)
y) Yes
n) No
y/n> n              <------选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
n) No
y/n> y              <------选y,自动配置令牌
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            <------此处会重定向到microsoft的登录界面,登录onedrive账号,确认授权
                           因为需要web访问,所以需要开启vnc操作,单纯ssh无法实现
Choose a number from below, or type in an existing value
 1 / OneDrive Personal or Business
   \ "onedrive"
 2 / Sharepoint site
   \ "sharepoint"
 3 / Type in driveID
   \ "driveid"
 4 / Type in SiteID
   \ "siteid"
 5 / Search a Sharepoint site
   \ "search"
Your choice> 1      <------确认onedrive类型,一般是1
Found 1 drives, please select the one you want to use:
0: OneDrive (business) id=b!Eqwertyuiopasdfghjklzxcvbnm-7mnbvcxzlkjhgfdsapoiuytrewqk
Chose drive to use:> 0     <------选择使用的磁盘,如果有多个
Found drive 'root' of type 'business', URL: https://org-my.sharepoint.com/personal/you/Documents
Is that okay?
y) Yes
n) No
y/n> y                     <------选y
--------------------
[remote]
type = onedrive
token = {"access_token":"youraccesstoken","token_type":"Bearer","refresh_token":"yourrefreshtoken","expiry":"2018-08-26T22:39:52.486512262+08:00"}
drive_id = b!Eqwertyuiopasdfghjklzxcvbnm-7mnbvcxzlkjhgfdsapoiuytrewqk
drive_type = business
--------------------
y) Yes this is OK
e) Edit this remote
d) Delete this remote
y/e/d> y                  <------大功告成

 

 

 

5.挂载为本地磁盘 (rclone mount 被标注为实验性的功能,文件上传下载没有rclone copy 好用)

rclone mount YourDiskName:DiskDirectory /MountPoint --daemon --copy-links --no-gzip-encoding --no-check-certificate

YourDiskName:前面取的磁盘名称

DiskDirectory:OneDrive里面的目录名

MountPoint:本地挂载点

--daemon:挂载为后台程序,不加mount程序不能退出

 

root@VM-0-8-ubuntu:~# df -h
Filesystem       Size  Used Avail Use% Mounted on
udev             410M     0  410M   0% /dev
tmpfs             87M   12M   75M  14% /run
/dev/vda1         50G   35G   13G  74% /
tmpfs            433M  132K  432M   1% /dev/shm
tmpfs            5.0M     0  5.0M   0% /run/lock
tmpfs            433M     0  433M   0% /sys/fs/cgroup
tmpfs             87M   16K   87M   1% /run/user/117
tmpfs             87M     0   87M   0% /run/user/500
YourDiskName:DiskDirectory  5.0T   27G  5.0T   1% /MountPoint

6.访问控制

OneDrive使用ip段总结:

40.126.12.0/24

TCP:443

13.107.136.0/24

TCP:443

20.190.140.0/24

TCP:443

 有需要配置防火墙的可能需要

总结 :

       本文知识90%从网上免费获取,总结实践后共享给大家。知识都产权保护,大家都玩球啊(视觉中国可以去死了)。OneDrive速度不错,国内访问上传下载基本都有2m/s

 

 

 

 

 类似资料: