前期准备
客户端授权
在本地Windows电脑上下载rclone,下载地址:https://rclone.org/downloads/ 。然后解压出来,进入cmd,输入以下命令:
rclone authorize "onedrive"
之后会弹出窗口认证,然后复制token
Paste the following into your remote machine --->
{"access_token":"xxxx"} #请复制{xx}整个内容(包括花括号),后面需要用到
<---End paste
安装fuse
在服务器上安装fuse,在挂载时会用到
yum install fuse
安装rclone
安装
curl https://rclone.org/install.sh | sudo bash
初始化配置
rclone config
No remotes found - make a new one
n) New remote
s) Set configuration password
q) Quit config
n/s/q> n
name> Spirit #随便填
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
1 / A stackable unification remote, which can appear to merge the contents of several remotes
"union"
2 / Alias for a existing remote
"alias"
3 / Amazon Drive
"amazon cloud drive"
4 / Amazon S3 Compliant Storage Provider (AWS, Alibaba, Ceph, Digital Ocean, Dreamhost, IBM COS, Minio, etc)
"s3"
5 / Backblaze B2
"b2"
6 / Box
"box"
7 / Cache a remote
"cache"
8 / Dropbox
"dropbox"
9 / Encrypt/Decrypt a remote
"crypt"
10 / FTP Connection
"ftp"
11 / Google Cloud Storage (this is not Google Drive)
"google cloud storage"
12 / Google Drive
"drive"
13 / Hubic
"hubic"
14 / JottaCloud
"jottacloud"
15 / Local Disk
"local"
16 / Mega
"mega"
17 / Microsoft Azure Blob Storage
"azureblob"
18 / Microsoft OneDrive
"onedrive"
19 / OpenDrive
"opendrive"
20 / Openstack Swift (Rackspace Cloud Files, Memset Memstore, OVH)
"swift"
21 / Pcloud
"pcloud"
22 / QingCloud Object Storage
"qingstor"
23 / SSH/SFTP Connection
"sftp"
24 / Webdav
"webdav"
25 / Yandex Disk
"yandex"
26 / http Connection
"http"
Storage> 18 #选择18,Microsoft OneDrive
** See help for onedrive backend at: https://rclone.org/onedrive/ **
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
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> n #选择n
For this to work, you will need rclone available on a machine that has a web browser available.
Execute the following on your machine:
rclone authorize "onedrive"
Then paste the result below:
result> {"access_token":""} #输入之前在客户端授权的内容
--------------------
Choose a number from below, or type in an existing value
1 / OneDrive Personal or Business
"onedrive"
2 / Root Sharepoint site
"sharepoint"
3 / Type in driveID
"driveid"
4 / Type in SiteID
"siteid"
5 / Search a Sharepoint site
"search"
Your choice> 1 #选择1
--------------------
y) Yes this is OK
e) Edit this remote
d) Delete this remote
y/e/d> y #选择y
Current remotes:
Name Type
==== ====
Spirit 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 mount Spirit:Wallpapers /mnt/3/ --copy-links --no-gzip-encoding --no-check-certificate --allow-other --allow-non-empty --umask 000
Spirit
为初始化配置填的name
,Wallpapers
为OneDrive里的文件夹,/mnt/3/
为VPS上的本地文件夹
卸载
fusermount -qzu /mnt/3/
设置开机自启
下载脚本
wget -N --no-check-certificate https://raw.githubusercontent.com/x91270/Centos/master/rcloned
修改一下内容
vim rcloned
NAME="" #rclone name名,及配置时输入的Name
REMOTE='' #远程文件夹,OneDrive 网盘里的挂载的一个文件夹
LOCAL='' #挂载地址,VPS本地挂载目录
设置自启
mv rcloned /etc/init.d/rcloned
chmod +x /etc/init.d/rcloned
chkconfig rcloned on
bash /etc/init.d/rcloned start