本文主要介绍如何将OneDrive作为一个超大的免费云盘,挂载到服务器或者本地电脑中。
申请5TB云盘的地址: Đăng ký tài khoản OneDrive miễn phí (不确定其有效时间) Rclone设置以及如何挂载,请参阅脚注中的文章以及视频 1) 2) 3) 4) 5)
Windows系统从 2) 给出的链接下载到本地,然后设置系统环境变量 path 到相应的目录即可。
Mac 或者 Linux 直接 apt-get install 或者 brew 安装就OK。
完成后安装 RcloneBrowser 图形界面可以帮助管理。
需要去 Azure 注册一个应用,名字随便起,不是「onedrive」就好。
需要注意的点:
http://localhost:53682/
, 否则无法验证。
第二步:建立一个新的证书和密码
将来要用到的是「值」 而不是 「机密ID」。创建以后马上就要复制下来,否则将来机会看不见。
第三步:添加API权限
选择 API 权限/Microsoft Graph/应用程序权限
OneDrive 应用的设置基本就结束了。
在某宝花12元买了一个谷歌共享云盘。倒是不需要任何client_id和application_secrit,在rclone config的时候一路Enter就好,无需填任何东西。只需在最后交互界面询问,“Configure this as a Shared Drive (Team Drive)?” 的时候选择y,就会连接上共享云盘。
Configure this as a Shared Drive (Team Drive)? y) Yes n) No (default)
有时间可以尝试一下这个项目,6) 通过Cloudflare workers 直接下载云盘上的文件。
按照参考文章中的演示一步一步往下走就可以了。最后的结果是
如果在headless计算机上设置的话,比如vps上,最后一步要选择NO,并在当地计算机上验证。也有可能出现tocken不正确,或者不可识别的错误。有个取巧的方法就是在当地可以启动浏览器的计算机上config一次,成功后其config文档会保存在/home/<user>/.config/rclone/rclone.conf
下面。把内容复制到远程计算机上相应的文档中就好了。查看config文档位置
rclone config file
最后一步可能要粘贴成下面这种形式,而不是仅仅token里面的那个字符串。
{"access_token":"******","expiry":"2021-08-04T01:22:50.579803+02:00"}
Windows 命令行挂载(参数 * 是让系自行选择一个没有分配的盘符)
rclone mount gdrive:work *
启动挂载就要用到脚本以及winfsp 程序。
set ws=WScript.CreateObject("WScript.Shell") ws.Run "rclone.exe mount gdrive:work * --vfs-cache-mode writes",0
组合键 win + R 唤出运行窗口,输入 shell:startup,回车执行后会打开 Windows 启动文件夹。把脚本拖入这个文件夹即可,电脑每次启动时都会自动执行这个文件夹中的脚本文件。
Mac 安装rclone和fuse
curl https://rclone.org/install.sh | sudo bash brew install --cask osxfuse sudo rclone mount gdrive:work ~/gdrive --allow-other --daemon umount /path/to/local/mount # 卸载
Ubuntu 上挂载比较好的命令
rclone mount gdrive:work/backup ~/bkp --copy-links --no-gzip-encoding --no-check-certificate --allow-other --allow-non-empty --umask 000 & # fusermount -quz ~/bkp # ... ps -ef | grep rclone -> kill pid
fusermount -qzu <本地路径> # umount <本地路径>
Windows 系统参看 上一节 文中的介绍。Linux 系统按以下步骤进行7)
wget -N git.io/rcloned && nano rcloned
bash /etc/init.d/rcloned start
bash /etc/init.d/rcloned stop
bash /etc/init.d/rcloned restart
tail -f /$HOME/.rclone/rcloned.log
NAME="gdrive" #Rclone配置时填写的name REMOTE='work' #远程文件夹work,网盘里的挂载的一个文件夹,留空为整个网盘 LOCAL='/home/onedrive' #挂载地址,VPS本地挂载目录
mv rcloned /etc/init.d/rcloned chmod +x /etc/init.d/rcloned update-rc.d -f rcloned defaults # Debian/Ubuntu chkconfig rcloned on # CentOS bash /etc/init.d/rcloned start
Mac 系统参看开机启动 中描述。
bash /etc/init.d/rcloned stop update-rc.d -f rcloned remove # Debian/Ubuntu chkconfig rcloned off # CentOS rm -f /etc/init.d/rcloned
rclone 传递大型文件还是很好的,但用作restic仓库就非常的慢。所以比较好的使用方式应该是tar一个大文件过去。
tar cf - /tmp/sync-dir/ | rclone rcat gdrive:work/backup/custom-test-rcat.tar.gz
安装 apt-get install rclone
配置 rclone config show
rclone config
name: goldencloud Google Drive(13)
一路回车,不需要输入邮箱。最后会给一个链接地址,在浏览器中打开这个地址,登陆到相应的GoogleDrive中。谷歌会给一个配对密码,返回Terminal输入这个密码即可。
// 复制 test.txt 文件到云盘的 ftp 目录 rclone copy test.txt goldencloud:ftp // 复制 dirc 文件夹到云盘的 ftp 目录 rclone copy dirc goldencloud:ftp