Rclone是Go程序,是一个二进制文件。本文介绍各个平台下的rclone安装以及不同安装方式。
- 快速开始
下载对应平台的二进制文件
解压出rclone/rclone.exe二进制文件
运行rclone config开始进行设置
可以通过rclone -h来获取帮助信息。 脚本安装
运行以下脚本,来安装rclone到Linux/macOS/BSD系统上:curl https://rclone.org/install.sh | sudo bash
对于beta版本的安装,运行:
curl https://rclone.org/install.sh | sudo bash -s beta
注意:
这个脚本会检查第一次安装的rclone版本,如果不需要则不会重新下载。
通过预编译二进制文件来进行Linux安装
获取并解压curl -O https://downloads.rclone.org/rclone-current-linux-amd64.zip
unzip rclone-current-linux-amd64.zip
cd rclone-*-linux-amd64
拷贝二进制文件
sudo cp rclone /usr/bin/
sudo chown root:root /usr/bin/rclone
sudo chmod 755 /usr/bin/rclone
安装man手册
sudo mkdir -p /usr/local/share/man/man1
sudo cp rclone.1 /usr/local/share/man/man1/
sudo mandb
通过brew来进行macOS上的安装
brew install rclone
使用curl通过预编译二进制文件来进行macOS安装
为避免macOS gatekeeper强制执行对二进制文件进行签名和公证的问题,可以通过curl下载。
下载rclone的最新版本cd && curl -O https://downloads.rclone.org/rclone-current-osx-amd64.zip
解压下载文件并进入解压目录
unzip -a rclone-current-osx-amd64.zip && cd rclone-*-osx-amd64
移动rclone文件到$PATH存在的目录下。
sudo mkdir -p /usr/local/bin
sudo mv rclone /usr/local/bin/
删除剩下的文件
cd .. && rm -rf rclone-*-osx-amd64 rclone-current-osx-amd64.zip
运行rclone config开始设置。
rclone config
使用web浏览器通过预编译二进制文件来进行macOS安装
使用浏览器下载二进制文件时,浏览器将设置macOS gatekeeper扩展属性。从Catalina开始,尝试运行rclone时,将显示一个弹出窗口,提示:"rclone" cannot be opened because the developer cannot be verified.
macOS cannot verify that this app is free from malware.
出现以上提示最简单的解决方案是:
xattr -d com.apple.quarantine rclone
- 通过Docker安装
rclone维护了一个【Docker镜像】。这个镜像是Docker Hub从rclone源码基于最小Alpine Linux镜像自动构建的。
:last标签始终指向最新的稳定发布版。也可以使用:beta标签来获取从master构建的最新版。另外,同样可以同其它的版本标签,比如:1.49.1、1.49或者:1。
$ docker pull rclone/rclone:latest
latest: Pulling from rclone/rclone
Digest: sha256:0e0ced72671989bb837fea8e88578b3fc48371aa45d209663683e24cfdaa0e11
...
$ docker run --rm rclone/rclone:latest version
rclone v1.49.1
- os/arch: linux/amd64
- go version: go1.12.9
当从rclone镜像启动Rclone Docker容器时,需要使用一些命令行选项。
需要把主机rclone配置目录挂载到Docker容器的/config/rclone目录。由于rclone需要更新配置文件中的令牌(tokens),并且在更新过程中涉及文件重命名,因此需要挂载整个主机的配置目录(config dir)而不是单个主机的rclone配置目录。
需要挂载一个主机数据目录(data dir)到Docker容器的/data
默认情况下,rclone在Docker容器中以root用户运行,因此运行中创建的所有文件都是root用户组。如果你的配置和数据文件在主机上属于非root用户及用户组,那么只能在容器启动命令行中传递。
可以在用户空间Docker容器内使用rclone mount,并将生成的fuse(Filesystem in Userspace,用户态文件系统)挂载目录公开给主机。
另外,需要挂载主机的/etc/passwd和/etc/group给fuse以便在容器中工作。
示例(在Ubuntu 18.04.3测试)命令:
# config on host at ~/.config/rclone/rclone.conf
# data on host at ~/data
# make sure the config is ok by listing the remotes
# 通过列出远端来保证配置是正确的
docker run --rm \
--volume ~/.config/rclone:/config/rclone \
--volume ~/data:/data:shared \
--user $(id -u):$(id -g) \
rclone/rclone \
listremotes
# perform mount inside Docker container, expose result to host
# 在Docker容器中执行挂载(mount)并将结果暴露给主机
mkdir -p ~/data/mount
docker run --rm \
--volume ~/.config/rclone:/config/rclone \
--volume ~/data:/data:shared \
--user $(id -u):$(id -g) \
--volume /etc/passwd:/etc/passwd:ro --volume /etc/group:/etc/group:ro \
--device /dev/fuse --cap-add SYS_ADMIN --security-opt apparmor:unconfined \
rclone/rclone \
mount dropbox:Photos /data/mount &
ls ~/data/mount
kill %1
通过源码安装
确保已经安装go 1.7及以上版本。如果没有安装可以【下载】,建议使用最新版本。git clone https://github.com/rclone/rclone.git
cd rclone
go build
./rclone version
另外也可以在GOPATH(通常为~/go目录)构建和安装rclonego get -u -v github.com/rclone/rclone
上述命令中,源码下载到$GOPATH/src/github.com/rclone/rclone(默认~/go/src/github.com/rclone/rclone)目录,安装到$GOPATH/bin(默认~/go/bin/rclone)
评论已关闭