|教程|使用Rclone挂载Google Drive到云主机|VPS 扩容硬盘

tengxunyun cera

本文转载:https://www.yunloc.com/562.html

 

Rclone是一个 Github 上面的一个开源项目,专门开发用来在 Linux 上面同步文件/文件夹,上传的一个命令行工具。目前很多人喜欢用 VPS 做离线下载,不过由于有的服务器硬盘太小了,我们可以通过挂载Google Drive网盘的方法,实现扩容。(Google Drive 有 15G 免费的空间,也可以去某宝购买一个无限空间的账号,理论上能够实现无限存储)

 

本教程仅在 CentOS 7 下测试成功,其他版本并未测试仅供参考;

首先安装 EPEL 源:

  1. yum y install epelrelease

接下来安装一些基本组件和依赖:

  1. yum y install wget unzip screen fuse fusedevel

下载Rclone-解压-重命名文件夹-进入文件夹

  1. cd /usr/local
  2. wget wget https://downloads.rclone.org/v1.47.0/rclone-v1.47.0-linux-amd64.zip
  3. unzip rclonev1.47.0linuxamd64.zip
  4. mv rclonev1.47.0linuxamd64 rclone
  5. cd rclone

目前最新版本是 1.47.0,rclone 会随时间推移而更新,可以到 rclone 官网 查看最新版本然后替换地址即可;

运行 Rclone 开始配置:

  1. chmod +x rclone
  2. ./rclone config

第一步选择 n(新建),然后回车输入一个 name(名字),例如:这里我创建的名字为 gd

  1. No remotes found make a new one
  2. n) New remote
  3. s) Set configuration password
  4. q) Quit config
  5. n/s/q> n
  6. name> gd

这里选择你需要配置的存储类型,我这里选择 12(Google Drive),根据版本变化选择的序号会不同看清楚 Google Drive 再选择,如果要挂载其他的选填数字即可:

  1. Type of storage to configure.
  2. Enter a string value. Press Enter for the default (“”).
  3. Choose a number from below, or type in your own value
  4. 1 / A stackable unification remote, which can appear to merge the contents of several remotes
  5. \ “union”
  6. 2 / Alias for a existing remote
  7. \ “alias”
  8. 3 / Amazon Drive
  9. \ “amazon cloud drive”
  10. 4 / Amazon S3 Compliant Storage Provider (AWS, Alibaba, Ceph, Digital Ocean, Dreamhost, IBM COS, Minio, etc)
  11. \ “s3”
  12. 5 / Backblaze B2
  13. \ “b2”
  14. 6 / Box
  15. \ “box”
  16. 7 / Cache a remote
  17. \ “cache”
  18. 8 / Dropbox
  19. \ “dropbox”
  20. 9 / Encrypt/Decrypt a remote
  21. \ “crypt”
  22. 10 / FTP Connection
  23. \ “ftp”
  24. 11 / Google Cloud Storage (this is not Google Drive)
  25. \ “google cloud storage”
  26. 12 / Google Drive
  27. \ “drive”
  28. 13 / Hubic
  29. \ “hubic”
  30. 14 / JottaCloud
  31. \ “jottacloud”
  32. 15 / Local Disk
  33. \ “local”
  34. 16 / Mega
  35. \ “mega”
  36. 17 / Microsoft Azure Blob Storage
  37. \ “azureblob”
  38. 18 / Microsoft OneDrive
  39. \ “onedrive”
  40. 19 / OpenDrive
  41. \ “opendrive”
  42. 20 / Openstack Swift (Rackspace Cloud Files, Memset Memstore, OVH)
  43. \ “swift”
  44. 21 / Pcloud
  45. \ “pcloud”
  46. 22 / QingCloud Object Storage
  47. \ “qingstor”
  48. 23 / SSH/SFTP Connection
  49. \ “sftp”
  50. 24 / Webdav
  51. \ “webdav”
  52. 25 / Yandex Disk
  53. \ “yandex”
  54. 26 / http Connection
  55. \ “http”
  56. Storage> 12

接下来会叫选填 Google Application Client ID 和,这里 2 项都留空回车即可:

  1. Google Application Client Id
  2. Leave blank normally.
  3. Enter a string value. Press Enter for the default (“”).
  4. client_id>
  5. Google Application Client Secret
  6. Leave blank normally.
  7. Enter a string value. Press Enter for the default (“”).
  8. client_secret>

rclone 在请求从驱动器访问时应使用的范围,这里选 1 即可

  1. Scope that rclone should use when requesting access from drive.
  2. Enter a string value. Press Enter for the default (“”).
  3. Choose a number from below, or type in your own value
  4. 1 / Full access all files, excluding Application Data Folder.
  5. \ “drive”
  6. 2 / Readonly access to file metadata and file contents.
  7. \ “drive.readonly”
  8. / Access to files created by rclone only.
  9. 3 | These are visible in the drive website.
  10. | File authorization is revoked when the user deauthorizes the app.
  11. \ “drive.file”
  12. / Allows read and write access to the Application Data folder.
  13. 4 | This is not visible in the drive website.
  14. \ “drive.appfolder”
  15. / Allows readonly access to file metadata but
  16. 5 | does not allow any access to read or download file content.
  17. \ “drive.metadata.readonly”
  18. scope> 1

选填文件夹 ID 和帐户凭据 JSON 文件路径,这里我都留空回车的

  1. ID of the root folder
  2. Leave blank normally.
  3. Fill in to access “Computers” folders. (see docs).
  4. Enter a string value. Press Enter for the default (“”).
  5. root_folder_id>
  6. Service Account Credentials JSON file path
  7. Leave blank normally.
  8. Needed only if you want use SA instead of interactive login.
  9. Enter a string value. Press Enter for the default (“”).
  10. service_account_file>

问你是否要编辑高级配置,这里我选择 N

  1. Edit advanced config? (y/n)
  2. y) Yes
  3. n) No
  4. y/n> n

是否自动远程配置,这里选择 N,因为你在手动远程配置

  1. Remote config
  2. Use auto config?
  3. * Say Y if not sure
  4. * Say N if you are working on a remote or headless machine
  5. y) Yes
  6. n) No
  7. y/n> n

接下来会给出 Google Drive 的授权地址,把它复制到浏览器打开,按提示登陆,复制获取到的代码,然后返回 SSH 粘贴后回车

  1. If your browser doesn‘t open automatically go to the following link: https://accounts.google.com/o/oauth2/auth?access_type=offline&client_id=202264815644.apps.googleusercontent.com&redirect_uri=urn%3Aietf%3Awg%3Aoauth%3A2.0%3Aoob&response_type=code&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fdrive&state=55663e7e07382e3dddb9025c86de4f
  2. Log in and authorize rclone for access
  3. Enter verification code> 4/UQGiRz375eb-OixO5EUtZMxBhJwAQ4zOyvA1wtJWKq2Ocmzh3zNYE

问你是不是将其配置为团队网盘,这里选 N

  1. Configure this as a team drive?
  2. y) Yes
  3. n) No
  4. y/n> n

列出你上面修改的配置信息,问你是否删除、编辑或者确定配置信息,这里选择确定 y

  1. ——————–
  2. [gd]
  3. type = drive
  4. scope = drive
  5. token = {“access_token”:“ya29.GlsQByNiBURlXoPpe-bDpa2kF99Jo4rrmjicBXdWIT6loPUhS7SJ9XWUIk2LP4vO231nra_zpUwHn6no0Y_LBbXYFZvyVf0gRthepF2VuPFdhBFEKY7XYJaelt”,“token_type”:“Bearer”,“refresh_token”:“1/ry1JGhRiqqE6-PqRN-S2icZ_Oz9uOTXfSNxWA85zUnjU5gEm-6TejL6o-hjyuY”,“expiry”:“2019-05-21T04:36:23.300542043-04:00”}
  6. ——————–
  7. y) Yes this is OK
  8. e) Edit this remote
  9. d) Delete this remote
  10. y/e/d> y

问你是否修改、删除、退出配置编辑,这里选择退出 q

  1. Current remotes:
  2.  
  3. Name Type
  4. ==== ====
  5. gd drive
  6.  
  7. e) Edit existing remote
  8. n) New remote
  9. d) Delete remote
  10. r) Rename remote
  11. c) Copy remote
  12. s) Set configuration password
  13. q) Quit config
  14. e/n/d/r/c/s/q> q

到这里结束配置 rclone,下面要把 Google Drive 网盘挂载到云主机/Vps 上和设置开机自启,自动挂载 Google Drive 网盘

新建一个你要挂载的目录,例如我要挂载到/home/gdrive

  1. mkdir p /home/gdrive

再执行挂载命令:

  1. ./rclone mount gd: /home/gdrive allowother allownonempty vfscachemode writes

gd 为 Rclone 的配置名称,比如你在创建配置 rclone 的时候 Name 填的 gd,/home/gdrive 为本地路径;

这里还可以自定义设置网盘里的文件夹路径,例如:

  1. ./rclone mount gd:backup /home/gdrive allowother allownonempty vfscachemode writes

gd:backup gd 为 Rclone 的配置名称:backup 为网盘里的目录名

卸载 Google Drive 磁盘

  1. fusermount qzu /home/gdrive

挂载只要几秒钟,但终端不会返回成功信息,关闭 SSH 重连即可。

重连后查看是否挂载成功:

  1. df h

有看到 gd,15G 硬盘,使用量和本本地主机路径即成功挂载

  1. gd: 15G 1.1M 15G 1% /home/gdrive

接下来设置开机自动挂载,先把 rclone 的可执行文件复制到/usr/bin:

  1. cp /usr/local/rclone/rclone /usr/bin/rclone

新建一个/usr/lib/systemd/system/rclone.service 文件内容为:

  1. [Unit]
  2. Description=rclone
  3.  
  4. [Service]
  5. User=root
  6. ExecStart=/usr/bin/rclone mount gd: /home/gdrive allowother allownonempty vfscachemode writes
  7. Restart=onabort
  8.  
  9. [Install]
  10. WantedBy=multiuser.target

注意修改挂载命令为你主机的路径

重载 daemon,让新的服务文件生效:

  1. systemctl daemonreload

用 systemctl 来启动 rclone

  1. systemctl start rclone

设置开机启动:

  1. systemctl enable rclone

停止、查看状态可以用:

  1. systemctl stop rclone
  2. systemctl status rclone

重启你的云主机/VPS:

  1. reboot

重启后查看一下 rclone 的服务是否启动,GoogleDrive 是否正常挂载

  1. systemctl status rclone
  2. df h

OK ! 完成.

把文件上传到 Google Drive

为什么不直接把文件目录设置成挂载目录?如果直接把文件目录指定到挂载目录,会出现各种莫名其妙的错误,比如:文件无法写入、读取、保存到 Googlr Drive 的文件不完整等等奇葩的问题。

这里可以用同步命令,本地目录/home/backup 同步到网盘的 backup 目录

  1. rclone sync /home/backup gd:backup

相反,把目录调整下,就是把网盘 backup 目录同步到 VPS 目录/home/backup

  1. rclone sync gd:backup /home/backup

通过添加此参数 –ignore-existing 可以忽略在网盘上已备份的文件,这相当于增量备份

  1. rclone copy ignoreexisting /home/backup gd:backup

如果挂载 2 个网盘的话,可以同步配置名 gd2 的网盘里的 backup 目录,到配置名为 gd 的网盘的 backup 目录,反之亦然

  1. rclone sync gd:backup gd:backup

其他问题请参考 rclone 帮助文档 https://rclone.org/googlecloudstorage/

cera aliyun tengxunyun cloudiplc

相关推荐

丽萨主机|美国CN2|云主机|Netflix|Hulu

#lisahost#怎么样?lisahost好不好?lisahost新上了cera洛杉矶的cn2 gia vps,美国原生IP(支持Tiktok),六网(电信,联通,移动,#广电#有线,#鹏博士#,科技网)回程CN2 GIA精品网络,保障网络高峰期低延迟不卡顿,去程直连,保障访问稳定和防御,默认#50G防御#,#100G秒解#,超过100G后15分钟解封。可付费加到100G防御,详情工单咨询。 官方网站:https://lisahost.com 9折优惠码:ZJCP-GV4U4SXHR7 #美国#CERA CN2高防 – 精简版 内存:512M CPU:1核 硬盘:#10G SSD# 流量:100G/月 带宽:#10Mbps# IPv4:1个 #优惠码#:ZJCP-GV4U4SXHR7 价格:36元/月 购买链接 更多配置:https://lisahost.com/cart.php?gid=32

金峰云|美国|云主机|CN2GIA|月付39元

商家介绍: Kinpo.net(#金峰云#是一家的公司注册于香港的IDC服务商,目前提供云主机,服务器租用,目前已有#香港#,美国洛杉矶和圣何塞服务器,日本东京机房正在紧急部署中,所有机房均有回国GIA线路支持,Ping延迟低,国内速度优秀,非常适合各大企业的海外业务网站和远程办公。 官方网站:https://kinpo.net 优惠方案: 美国GIA云主机 核心:2核CPU 内存:1GB 硬盘:40GB 流量:#Unmilited# 端口:2Mbps 架构:KVM 价格:39元/月 有码:vpsmm 传送:购买链接

金峰云|美国|云主机|CN2-GIA|月付39元

商家介绍: Kinpo.net(#金峰云#是一家的公司注册于香港的IDC服务商,目前提供云主机,服务器租用,目前已有#香港#,美国洛杉矶和圣何塞服务器,日本东京机房正在紧急部署中,所有机房均有回国GIA线路支持,Ping延迟低,国内速度优秀,非常适合各大企业的海外业务网站和远程办公。 官方网站:https://kinpo.net 优惠方案: 美国GIA云主机 核心:2核CPU 内存:1GB 硬盘:40GB 流量:#Unmilited# 端口:2Mbps 架构:KVM 价格:39元/月 有码:vpsmm 传送:购买链接

OVZH|高防云主机|年付30|全功能|cPanel云主机

#OVZH#是一家2016年成立的#国人#主机商家,亿云科技有限公司旗下云计算产品,目前商家主要销售的产品有#虚拟主机#、VPS和#独立服务器#,今天收到商家促销推送,目前商家推出了四周年云主机活动,采用全功能的#cPanel面板#,带80G的#DDOS防御#,提供#自动备份#、定时任何和#一键SSL#,如果不喜欢自己折腾安装环境,直接买空间是一个比较好的选择,关键本次活动的优惠力度比较大,原价120元每年的空间优惠下来仅需要30元有需要可以上车了。 促销套餐 提供数据安全、自动备份、定时任务、DDOS保护、一键SSL开启,PHP5.6-7.4版本自由切换,带80G的防御 空间:1000M 网站:2个 流量:1T #优惠码#:OVZH-HOST-ovzhcom 价格:¥120/年 ¥30/年 直达链接

微信扫一扫,分享到朋友圈

|教程|使用Rclone挂载Google Drive到云主机|VPS 扩容硬盘