安装rclone方法

快速开始:
下载相关二进制文件。
解压缩rclone二进制文件。
运行rclone config进行设置。 有关更多详细信息,请参阅rclone config docs。
请参阅下面的一些扩展的Linux / macOS指令。

请参阅文档的用法部分了解如何使用rclone,或运行rclone -h。

脚本安装

在 Linux/macOS/BSD系统上安装rclone,运行下面的命令行:

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

测试版安装:

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

安装联机帮助页:

sudo mkdir -p /usr/local/share/man/man1
sudo cp rclone.1 /usr/local/share/man/man1/
sudo mandb 

运行rclone config进行设置

macOS用brew安装(新增)

brew install rclone

macOS 从预编译的二进制文件安装:

下载最新版本的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/

(即使目录已经存在,mkdir命令也可以安全运行)。

删除剩余的文件:

cd .. && rm -rf rclone-*-osx-amd64 rclone-current-osx-amd64.zip

运行rclone config进行设置

在macOS上使用web浏览器从预编译二进制文件安装rclone(新增)

使用web浏览器下载二进制文件时,浏览器将设置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

macOS使用curl从预编译二进制文件安装(新增)

为了避免macOS网守强制二进制文件需要被签名和公证的问题,使用curl下载就足够了。

下载最新的rclone:

cd && curl -O https://downloads.rclone.org/rclone-current-osx-amd64.zip

解压下载的文件并cd到对应目录

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/

(即使目录已经存在,mkdir命令也可以安全运行)。

删除剩余的文件:

cd .. && rm -rf rclone-*-osx-amd64 rclone-current-osx-amd64.zip

运行rclone config进行设置

使用docker方式安装

rclone维护rclone的docker镜像。这些镜像是由docker hub基于最少的Alpine linux镜像从rclone源代码自动构建的。

:latest 标签会总是指向最新的稳定版本。你可以使用 :beta 标签来从主干获取最新的版本。当然,你也可以用具体的版本标签,比如 :1.49.1, :1.49 or :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容器时,需要考虑几个命令行选项。

您需要将位于/config/rclone的主机rclone config 目录挂载到Docker容器。由于rclone更新其配置文件中的令牌,并且更新过程涉及文件重命名,因此需要装载整个主机rclone config 目录,而不仅仅是单个主机rclone config文件。

您需要将在/data的主机数据目录挂载到Docker容器中。

默认情况下,Docker容器中的rclone二进制文件以UID=0(根)运行。因此,在运行中创建的所有文件都将具有UID=0。如果您的配置文件和数据文件位于具有非根目录的主机上UID:GID,您需要在容器开始命令行上传递这些。

如果要访问RC接口(通过API或Web UI),需要将–rc addr设置为:5572,以便从容器外部连接到它。

NOTE: 注意:在docker network设置为host的情况下运行此容器的用户可能应该将其设置为只侦听localhost,127.0.0.1:5572作为–rc addr的值

可以把rclone挂载到 Docker容器中的userspace,并将结果fuse挂载暴露给主机。具体的docker运行选项在主机之间可能略有不同。

您还需要挂载主机/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
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

从源代码安装(2021.1.12更新)

确保你至少安装了Go 1.11。 确保您的GOPATH已设置,然后:

git clone https://github.com/rclone/rclone.git
cd rclone
go build
./rclone version

这将为您留下一个rclone的签出版本,您可以用它修改和发送请求。如果使用make而不是go build,那么rclone build将包含正确的版本信息。

当然,您也可以用以下的命令行构建最新的稳定版rclone

go get github.com/rclone/rclone

或最新版本(相当于beta版)的

go get github.com/rclone/rclone@master

在将源代码下载到go模块缓存后,它们将以 $(go env GOPATH)/bin (~/go/bin/rclone by default) 格式构建二进制文件。

注意-不要在这里使用-u 的flag,这会导致go尝试更新rclone使用的依赖项,有时这些依赖项在rclone的当前版本中不起作用。

用 Ansible安装

  1. git clone https://github.com/stefangweichinger/ansible-rclone.git into your local roles-directory
  2. add the role to the hosts you want rclone installed to:
- hosts: rclone-hosts
 roles:
 - rclone

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注