Rclone挂载网盘

Rclone挂载网盘

前言

Rclone 是一个的命令行工具,支持在不同对象存储、网盘间同步、上传、下载数据。并且通过一些设置可以实现离线下载、服务器备份等非常实用的功能。Rclone 有很多种使用方式,挂载是其中的一种。

友情提示: 挂载这个操作并不是必须的,作为一个实验性功能它有很多局限性和问题。挂载后并不能当做一个真正的磁盘来使用,在进行文件操作时会使用本地磁盘进行缓存,即占用本地磁盘空间。使用不当还可能造成磁盘写满、VPS卡死等问题。在 Google 上搜索“Rclone”,与之相关的最多的关键词就是“挂载”,这在一定程度上对很多刚接触的小伙伴造成了误导。要稳定的进行上传、下载、同步等操作建议使用 Rclone 的原生命令功能。

安装和配置 Rclone

官方提供了一键安装脚本

curl https://rclone.org/install.sh | sudo bash

安装完后,输入 rclone config 命令进入交互式配置选项,按照提示一步一步来进行操作即可。

安装 fuse和 fuse3

单独安装fuse有个错误,需要安装fuse3

挂载需要安装 fuse,根据自己的系统来选择安装命令:

# Debian/Ubantu
apt-get update && apt-get install -y fuse
apt-get update && apt-get install -y fuse3
# CentOS
yum install -y fuse
yum install -y fuse3

挂载网盘

挂载网盘分为手动挂载和开机自动挂载,根据自己的需求来选择。

手动挂载

#挂载
rclone mount <网盘名称:网盘路径> <本地路径> [参数] --daemon

#取消挂载
fusermount -qzu <本地路径>

网盘名称为配置时填的 name网盘路径为网盘里的文件夹,留空为整个网盘,本地路径为 VPS 上的本地文件夹。参数可以查看官方文档根据需求进行选择。实际输入时不要有括号,这里只是为了更清楚的区分。--daemon 为进程守护参数,可后台运行。

使用示例

输入命令进行挂载操作:

rclone mount Onedrive:/ /Onedrive --copy-links --allow-other --allow-non-empty --umask 000 --daemon

然后输入 df -h 命令查看挂载情况。

root@P3TERX:~# df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            286M     0  286M   0% /dev
tmpfs            60M  7.8M   52M  14% /run
/dev/sda1        99G   25G   71G  26% /
tmpfs           297M   24K  297M   1% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           297M     0  297M   0% /sys/fs/cgroup
Onedrive:       5.0T  216G  4.8T   5% /Onedrive #这个就是挂载的网盘

取消挂载:

fusermount -qzu /Onedrive

开机自动挂载

  • 下载并编辑自启脚本
wget -N git.io/rcloned && nano rcloned

  • 修改内容:
NAME="Onedrive" #Rclone配置时填写的name
REMOTE=''  #远程文件夹,网盘里的挂载的一个文件夹,留空为整个网盘
LOCAL='/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

看到 [信息] rclone 启动成功 ! 即可。

管理

开始挂载 bash /etc/init.d/rcloned start

停止挂载 bash /etc/init.d/rcloned stop

重新挂载 bash /etc/init.d/rcloned restart

查看日志 tail -f /$HOME/.rclone/rcloned.log

卸载自启挂载

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常用功能选项

rclone copy – 复制
rclone move – 移动,如果要在移动后删除空源目录,请加上 –delete-empty-src-dirs 参数
rclone sync – 同步:将源目录同步到目标目录,只更改目标目录。
rclone size – 查看网盘文件占用大小。
rclone delete – 删除路径下的文件内容。
rclone purge – 删除路径及其所有文件内容。
rclone mkdir – 创建目录。
rclone rmdir – 删除目录。
rclone rmdirs – 删除指定灵境下的空目录。如果加上 –leave-root 参数,则不会删除根目录。
rclone check – 检查源和目的地址数据是否匹配。
rclone ls – 列出指定路径下的所有的文件以及文件大小和路径。
rclone lsl – 比上面多一个显示上传时间。
rclone lsd – 列出指定路径下的目录
rclone lsf – 列出指定路径下的目录和文件

常用命令

  • rclone mount:是rclone挂载命令
  • od:/file:上面已经提到,xiaoz提前配置好了OneDrive,并将名称命名为odod:/file则是OneDrive上的路径
  • /data/wwwroot/xxx:为本地文件夹路径(建议为空目录)
  • --allow-other:指的是允许非当前Rclone用户外的用户进行访问
  • --attr-timeout 5m:文件属性缓存,(大小,修改时间等)的时间。如果小鸡配置比较低,建议适当提高这个值,避免过多的和内核交互,占用资源。
  • -vfs-cache-mode full:开启VFS文件缓存,这样可减少Rclone与API交互,同时可提高文件读写效率
  • --vfs-cache-max-age 24h:VFS文件缓存时间,这里设置的24小时,如果文件很少更改,建议设置更长的时间
  • --vfs-cache-max-size 10G:VFS文件缓存上限大小,建议不超过当前空余磁盘的50%
  • vfs-read-chunk-size-limit 100M:分块读取大小,这里设置的是100M,可提高文件读的效率,比如1G的文件,大致分为10个块进行读取,但与此同时API请求次数也会增多
  • --buffer-size 100M:内存缓存,如果您内存比较小,可降低此值,如果内存比较大,可适当提高
  • --daemon:指后台方式运行

本人使用命令

rclone mount sharepoint:/OneDrive /www/wwwroot/OneDrive --copy-links --allow-other --uid=1000 --gid=1000 --allow-non-empty --umask 000 --attr-timeout 5m --vfs-cache-mode full --vfs-cache-max-age 24h --vfs-cache-max-size 10G --vfs-read-chunk-size-limit 100M --buffer-size 100M --daemon

 

© 版权声明
THE END
喜欢就支持一下吧
点赞5 分享
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容