介绍

官方网站:https://rclone.org

Rclone是一个命令行程序,用于管理云存储上的文件。它是云供应商的Web存储接口的功能丰富的替代方案。超过40种云存储产品支持rclone,包括S3对象存储,商业和消费者文件存储服务以及标准传输协议。

作用:

  • 将文件备份(和加密)到云存储
  • 从云存储还原(和解密)文件
  • 将云数据镜像到其他云服务或本地
  • 将数据迁移到云,或在云存储供应商之间迁移数据
  • 将多个、加密、缓存或多样化的云存储挂载为磁盘
  • 使用lsf,ljson,size,ncdu分析和说明云存储上保存的数据
  • 将文件系统合并在一起,将多个本地和/或云文件系统呈现为一个

特点

  • 转移
    • 始终检查 MD5、SHA1 哈希的文件完整性
    • 时间戳保留在文件上
    • 可随时重新启动操作
    • 可以往返网络,例如两个不同的云提供商
    • 可以使用多线程下载到本地磁盘
  • 将新文件或已更改的文件复制到云存储
  • 同步(单向)以使目录相同
  • 将文件移动到云存储,验证后删除本地文件
  • 检查哈希值和丢失/额外文件
  • 将云存储挂载为网络磁盘
  • 通过 HTTP/WebDav/FTP/SFTP/dlna 提供本地或远程文件
  • 实验性的基于网络的图形用户界面

部署

安装 Rclone

官方一键安装脚本

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

配置Rclone

输入指令按提示操作

1
rclone config

安装 Fuse

Debian/Ubantu

1
2
apt update
apt install -y fuse3

CentOS

1
yum install -y fuse3

挂载网盘

以下为手动挂载以及开机自动挂载两种方法

手动挂载

挂载

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

取消挂载

1
fusermount -qzu <本地路径>

查看挂载情况

1
df -h

手动挂载示例

1
rclone mount jianguoyun:/backup /root/backup --copy-links --allow-other --allow-non-empty --umask 000 --daemon --vfs-cache-mode full --log-file /var/log/rclone_mount.log

开机自动挂载

下载脚本

1
wget -N git.io/rcloned

修改脚本相应内容,如需修改挂载参数配置请自行在脚本内寻找

1
2
3
4
NAME="Onedrive" #Rclone配置时填写的name
REMOTE='' #远程文件夹,网盘里的挂载的一个文件夹,留空为整个网盘
LOCAL='/Onedrive' #挂载地址,VPS本地挂载目录
LOG="/$HOME/.rclone/rcloned.log"

长期运行日志文件可能会占用大量空间,如不需要日志。可修改为 LOG="/dev/null"

设置开机自启

1
2
3
4
5
6
7
8
9
mv rcloned /etc/init.d/rcloned
chmod +x /etc/init.d/rcloned

# Debian/Ubuntu
update-rc.d -f rcloned defaults

# CentOS
chkconfig rcloned on
bash /etc/init.d/rcloned start

管理

1
2
3
4
5
6
7
8
# 开始挂载
bash /etc/init.d/rcloned start
# 停止挂载
bash /etc/init.d/rcloned stop
# 重新挂载
bash /etc/init.d/rcloned restart
# 查看日志
tail -f /var/log/rclone_mount.log

卸载自动挂载

1
2
3
4
5
6
7
8
bash /etc/init.d/rcloned stop

# Debian/Ubuntu
update-rc.d -f rcloned remove

# CentOS
chkconfig rcloned off
rm -f /etc/init.d/rcloned