Linux利用Rclone挂载云盘到本地

挂载云盘到服务器

在挂载之前,先创建空文件夹用来作为挂载目录

mkdir /CloudStorage/AdminOnedrive

使用以下命令挂载:

rclone mount <云盘存储名称>:<要挂载云盘哪个路径>  <挂载到本地哪个目录> --copy-links --no-gzip-encoding --no-check-certificate --allow-other --allow-non-empty --umask 000

举例:

rclone mount AdminOnedrive:/  /CloudStorage/AdminOnedrive --copy-links --no-gzip-encoding --no-check-certificate --allow-other --allow-non-empty --umask 000 --vfs-cache-mode full --cache-dir /256dataDisk/rcloneCacheAndTemp/Cache --transfers=10 --checkers=50 --vfs-cache-max-age 1h

意思是将云端储存名为AdminOnedrive的云盘的根目录挂载到本地的/CloudStronge/PanOnedrive目录下。
对比上面的命令,增加了一些参数。以下是部分参数对照表:

参数名称 作用
–vfs-cache-mode 设置为full开启缓存
–cache-dir 设置缓存路径,可解决默认缓存路径为系统盘导致系统盘爆满,使用绝对路径
–transfers 同时传输数数量
–vfs-cache-max-age 1h 设置最大缓存时间

挂载可能出现的问题报错

提示
Fatal error: failed to mount FUSE fs: fusermount: exec: "fusermount3": executable file not found in $PATH
解决办法:

apt-get install fuse
apt-get install fuse3

挂载完成后使用下面的命令查看是否成功

df -h

Alt Text

创建开机自启

  1. 首先进入到系统自己文件的文件夹中

    cd  /etc/systemd/system
  2. 创建新的守护文件
    touch{文件名}.serve
    例如:

    touch rclone.service
  3. 编写守护文件

    vi rclone.service

    修改下面代码中的ExecStart=。等于号后面替换成自己的命令。然后将下面的命令粘贴进去,输入法英文状态下按esc后按shift+: 输入wq 保存并退出

    [Unit]
    Description=Rclone
    AssertPathIsDirectory=LocalFolder
    After=network-online.target

    [Service]
    Type=simple
    ExecStart=rclone mount AdminOnedrive:/ /CloudStorage/AdminOnedrive --copy-links --no-gzip-encoding --no-check-certificate --allow-other --allow-non-empty --umask 000 --vfs-cache-mode full --cache-dir /256dataDisk/rcloneCacheAndTemp/Cache --transfers=10 --checkers=50 --vfs-cache-max-age 1h --vfs-cache-max-size 80G
    ExecStop=fusermount -u LocalFolder
    Restart=on-abort
    User=root

    [Install]
    WantedBy=default.target
    EOF

开启开机自启

systemctl enable rclone

立即执行启动

systemctl start rclone

停止

systemctl enable rclone

重启

systemctl restart rclone

可以设置多个自启动挂载,使用文件名区分,分别设置