快捷搜索:  手机  明星

clouddrive为什么无法连接服务器(使用使用rclone挂载OneDrive到服务器)

clouddrive为什么无法连接服务器(使用使用rclone挂载OneDrive到服务器)然后网页会提示你回rclone去看结果,已经返回授权access了。然后同意授权许可但是我们如果因为一些开飞机等需求购买的国外VPS又没有单独的磁盘可购买,怎么办呢?挂载阿里的OSS去交磁盘和流量费?老王这种牛(qiong)人才不想呢,于是百度谷歌搜了一通,发现一个好东西,rclone!可以挂载N多的网盘作为本地磁盘使用,现在已经支持了“

综述

此文又臭又长,如果不是实在闲的蛋疼/刚需建议还是跳过吧

老王混迹网络这么多年,因为各种各样的原因使用过不少服务器(VPS),从国内到国外从早期的服务器合租网到现在的阿里云,当然国外的樱花、Vultr、狗爹也用过不少。

但是都有各种各样的不同缺点(主要是钱没到位),国内的限制带宽不限制流量,国外的限制流量不限制带宽(其实也限制,只是不严格),除此之外,硬盘空间也是个大问题,早期的VPS还好,偶尔有运营商给出便宜点(5-10$/月)的1T或者500G的HDD,大家基本上都是一哄而上抢光,现在的VPS一言难尽啊,基本上都是20-50G的空间了。

那么怎么解决这个问题,运营商开始卖其他的,比如阿里云的OSS,NSA;腾讯、百度也有类似的产品。

但是我们如果因为一些开飞机等需求购买的国外VPS又没有单独的磁盘可购买,怎么办呢?挂载阿里的OSS去交磁盘和流量费?

老王这种牛(qiong)人才不想呢,于是百度谷歌搜了一通,发现一个好东西,rclone!可以挂载N多的网盘作为本地磁盘使用,现在已经支持了

然后同意授权许可

clouddrive为什么无法连接服务器(使用使用rclone挂载OneDrive到服务器)(1)

然后网页会提示你回rclone去看结果,已经返回授权access了。

clouddrive为什么无法连接服务器(使用使用rclone挂载OneDrive到服务器)(2)

我们返回刚刚的命令行继续操作,首先输入1,确认我们刚刚授权的是OneDrive,接下来的一步会提示选择一个用户,直接输入0啊,继续提示问你这个配置是否正确,输入y继续。

Log in and authorize rclone for access Waiting for code... Got code 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 Found 1 drives please select the one you want to use: 0: OneDrive (business) id=b!****************** Chose drive to use:> 0 Found drive 'root' of type 'business' URL: https://***-my.sharepoint.com/personal/*****_*****_onmicrosoft_com/Documents Is that okay? y) Yes n) No y/n> y

然后会出现一大堆内容,这里分为几个部分,首先是告诉你这个是onedrive,然后是token,这个是最重要的,继续是id和版本,我们需要复制token =后面一直到drive_id(不包含drive_id)前面的所有内容。

-------------------- [laowang] type = onedrive token = {"access_token":"*********" "token_type":"Bearer" "refresh_token":"******" "expiry":"2019-11-10T15:12:28.3942627 08:00"} drive_id = b!********************* drive_type = business --------------------

复制图片中红色方块之间的内容

clouddrive为什么无法连接服务器(使用使用rclone挂载OneDrive到服务器)(3)

返回Linux继续操作

然后我们返回Linux继续操作,把这一串东西粘贴上去,回车。

首先输入1,确认我们刚刚授权的是OneDrive,接下来的一步会提示选择一个用户,直接输入0啊,继续提示问你这个配置是否正确,输入y继续。(好像又重复了)。

到了这里,已经配置完成了,输入q退出就可以了。

-------------------- y) Yes this is OK e) Edit this remote d) Delete this remote y/e/d> y Current remotes: Name Type ==== ==== laowang 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测试挂载

完成上面的操作,所有网络硬盘有关的配置已经完成了,接下来我们需要挂载到服务器使用了。

首先创建一个目录作为挂载点,然后挂载过去,比如我创建的目录就是/data/rclone,你也可以根据自己情况修改。

简单说一下挂载命令:rclone mount laowang:rclone /data/rclone其实需要修改的就是这部分,laowang是刚刚的远程连接名称,rclone是网盘里的文件夹,/data/rclone是服务器上的目录。

mkdir -p /data/rclone rclone mount laowang:rclone /data/rclone --copy-links --no-gzip-encoding --no-check-certificate --allow-other --allow-non-empty --umask 000

如果你看到了下面的提示,请返回看我判断系统是否支持那一段。如果系统停到了这里没有任何回复,那么恭喜你,完成挂载了。

2019/11/10 14:32:13 mount helper error: fusermount: fuse device not found try 'modprobe fuse' first 2019/11/10 14:32:13 Fatal error: failed to mount FUSE fs: fusermount: exit status 1

这时候,我们新开一个终端,登录到服务器,输入df-h,看这里,已经挂载了1T到/data/laowang目录下了

[root@atlanta ~]# df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 482M 0 482M 0% /dev tmpfs 493M 0 493M 0% /dev/shm tmpfs 493M 6.7M 486M 2% /run tmpfs 493M 0 493M 0% /sys/fs/cgroup /dev/vda1 25G 2.3G 22G 10% / tmpfs 99M 0 99M 0% /run/user/0 laowang:rclone 1.0T 0 1.0T 0% /data/laowang

试一下建一个文件,已经可以使用了,虽然速度不是很快。

[root@atlanta ~]# touch /data/laowang/test.txt [root@atlanta ~]# ls /data/laowang/ test.txt注册rclone为系统服务并自启动

不说了,开搞,按照下面步骤做就行了

wget https://www.moerats.com/usr/shell/rcloned && vim rcloned #感谢网友提供的脚本,这是我从别人博客找到的脚本^_^ #NAME="" #rclone name名,及配置时输入的Name #REMOTE='' #远程文件夹,OneDrive网盘里的挂载的一个文件夹 #LOCAL='' #挂载地址,VPS本地挂载目录 mv rcloned /etc/init.d/rcloned #复制脚本到 /etc/init.d/ chmod x /etc/init.d/rcloned #给脚本运行权限 chmod 755 /etc/init.d/rcloned #给脚本用户权限 service rcloned start [信息] rclone 启动成功 ! #启动rcloned服务 service rcloned stop [信息] rclone 停止成功 ! #停止rcloned服务 service rcloned restart [信息] rclone 停止成功 ! [信息] rclone 启动成功 ! #重启rcloned服务 chkconfig rcloned on #设置rcloned服务自启动 chkconfig --list rcloned #查看rcloned服务状态,如果返回的是下面一行的内容,说明配置没问题了 rcloned 0:off 1:off 2:on 3:on 4:on 5:on 6:off

然后你可以重启一下服务器测试一下配置了。

总结

远程挂载onedrive到服务器,的确是解决磁盘大小不够的问题,但是这也只是能做一个简单的应用,毕竟读写速度和响应时间都很差,作为备份目录也算是一个好办法了吧。

猜您喜欢: