有时候我们买了一台VPS,线路配置都不错,但是硬盘空间比较小,像搬瓦工,79刀,才20G的硬盘,随便放点东西就快占满空间了,有没有办法解决呢?
有的,搭配之前的E5提供的5TOneDrive免费空间,加上谷歌的团队盘,我们可以分分钟扩容我们的小鸡,让他变成一只大盘鸡!
Rclone配置
Rclone的配置见:https://blog.laoda.de/archives/aria2-rclone-filebrowser#toc-head-16
配置好了OD和GD,名字分别为od_bwg
和gd
挂载GD
到这里结束配置 rclone,下面要把 Google Drive 网盘挂载到云主机/Vps 上和设置开机自启,自动挂载 Google Drive 网盘
首先安装fuse:
apt-get install fuse #debian
yum install fuse #centos
新建一个你要挂载的目录,例如我要挂载到/home/gdrive
mkdir -p /home/gdrive
再执行挂载命令:
rclone mount gd: /home/gdrive --allow-other --allow-non-empty --vfs-cache-mode writes
gd
为Rclone的配置名称,比如你在创建配置 rclone 的时候 Name
填的 gd
,/home/gdrive
为本地路径(注意空格别漏了);
这里还可以自定义设置网盘里的文件夹路径,例如:
rclone mount gd:backup /home/gdrive --allow-other --allow-non-empty --vfs-cache-mode writes
gd:backup
中gd
为Rclone的配置名称,backup
为网盘里的目录名(注意后面的空格别漏了)卸载 Google Drive 磁盘
fusermount -qzu /home/gdrive
挂载只要几秒钟,但终端不会返回成功信息,关闭 SSH 重连即可。
重连后查看是否挂载成功:
df -h
有看到 gd,使用量和本本地主机路径即成功挂载:
接下来设置开机自动挂载,先把 rclone 的可执行文件复制到/usr/bin:
cp /usr/local/rclone/rclone /usr/bin/rclone
新建一个/usr/lib/systemd/system/rclone.service 文件
vi /usr/lib/systemd/system/rclone.service
内容为:
[Unit]
Description=rclone
[Service]
User=root
ExecStart=/usr/bin/rclone mount gd: /home/gdrive --allow-other --allow-non-empty --vfs-cache-mode writes
Restart=on-abort
[Install]
WantedBy=multi-user.target
注意修改挂载命令为你主机的路径。
如果需要挂载多个网盘(比如我还要挂在一个OD),按上面的教程新运行个 Rclone 配置,再新建一个/etc/systemd/system/rclone2.service
文件:
vi /etc/systemd/system/rclone2.service
内容如下:
[Unit]
Description = rclone
[Service]
User = root
ExecStart = /usr/bin/rclone mount od_bwg: /home/odrive --copy-links --no-gzip-encoding --no-check-certificate --allow-other --allow-non-empty --umask 000
Restart = on-abort
[Install]
WantedBy = multi-user.target
如果还有第三个,就以此类推,再新建一个/etc/systemd/system/rclone3.service
文件:
然后重载 daemon,让新的服务文件生效:
systemctl daemon-reload
用 systemctl 来启动 rclone
systemctl start rclone
systemctl start rclone2 #OD的
设置开机启动:
systemctl enable rclone
systemctl enable rclone2 #OD的
停止、查看状态可以用:
systemctl stop rclone
systemctl status rclone
systemctl stop rclone2 #OD的
systemctl status rclone2 #OD的
重启你的云主机/VPS:
reboot
重启后查看一下 rclone 的服务是否启动,GoogleDrive 是否正常挂载
systemctl status rclone
df -h
OK ! 完成.
如何上传、同步
为什么不直接把文件目录设置成挂载目录?如果直接把文件目录指定到挂载目录,会出现各种莫名其妙的错误,比如:文件无法写入、读取、保存到 Googlr Drive 的文件不完整等等奇葩的问题。
这里可以用同步命令,本地目录/home/backup
同步到网盘的 backup
目录
rclone sync /home/backup gd:backup
相反,把目录调整下,就是把网盘 backup
目录同步到 VPS 目录/home/backup
rclone sync gd:backup /home/backup
通过添加此参数--ignore-existing
可以忽略在网盘上已备份的文件,这相当于增量备份
rclone copy --ignore-existing /home/backup gd:backup
如果挂载 2 个网盘的话,可以同步配置名 gd2
的网盘里的 backup
目录,到配置名为 gd 的网盘的 backup
目录,反之亦然
rclone sync gd2:backup gd:backup
其他
其他问题可以参考 Rclone 帮助文档
https://rclone.org/googlecloudstorage/
评论区