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

Rclone具有与unix命令rsync、cp、mv、mount、ls、ncdu、tree、rm和cat相同的强大的云版本。Rclone熟悉的语法包括shell管道支持和——dry-run保护。它可在命令行、脚本中或通过其API使用。

1,下载rclone

下载地址:Rclone downloadsDownload rclone binaries for your OS.https://rclone.org/downloads/ 请根据需要安装的操作系统下载对应版本的安装文件

安装指引:InstallRclone Installationhttps://rclone.org/install/

2,系统需要提前安装好的软件

此方式需有unzip命令去执行,请提前安装好 在线安装命令:yum install zip unzip 离线安装提前下载好zip unzip插件包,直接yum install包名也可以

3,安装

3.1,将下载好的安装包rclone-v1.62.2-linux-amd64.zip放置到指定的文件夹下,比如路径为:/opt/rclone 3.2,解压zip包

unzip rclone-v1.62.2-linux-amd64.zip 

3.3,进入解压后的目录

cd rclone-*-linux-amd64/

查看目录下的文件:

[root@integration rclone-v1.62.2-linux-amd64]# ll
总用量 54780
-rw-r--r--. 1 root root     1456 3月  16 17:57 git-log.txt
-rwxr-xr-x. 1 root root 50298880 3月  16 17:59 rclone
-rw-r--r--. 1 root root  1937194 3月  16 17:43 rclone.1
-rw-r--r--. 1 root root  2120786 3月  16 17:43 README.html
-rw-r--r--. 1 root root  1728619 3月  16 17:43 README.txt

3.4,拷贝二进制文件

sudo cp rclone /usr/bin/
sudo chown root:root /usr/bin/rclone
sudo chmod 755 /usr/bin/rclone

3.5,开始安装

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

3.6,开始进行rclone配置 配置方式有两种:

  • 可以使用命令 rclone config 一步一步进行参数的配置(rclone config 文档:https://rclone.org/docs/)。https://rclone.org/docs/%EF%BC%89%E3%80%82 配置时重要参数:

    env_auth> 1
    access_key_id> USWUXHGYZQYFYFFIT3RE
    secret_access_key> MOJRH0mkL1IPauahWITSVvyDrQbEEIwljvmxdq03
    region> us-east-1
    endpoint> http://192.168.1.106:9000
    location_constraint>
    server_side_encryption>
    
  • 可以直接进行配置文件的配置

下面开始配置: 新建rclone.conf配置文件

vim /root/.config/rclone/rclone.conf

配置内容:

[minio]
type = s3
provider = Minio
env_auth = false
access_key_id = minio
secret_access_key = minio123
region = cn-east-1
endpoint = http://192.168.1.14:9000
location_constraint =
server_side_encryption =

配置内容参数说明:

  • [minio] -->配置的名称,自定义
  • type = s3 -->存储方式,minio属于:s3
  • provider = Minio -->供应商
  • env_auth = false -->AWS凭证,默认false
  • access_key_id = minio -->S3账户AK
  • secret_access_key = minio123 -->S3账户SK
  • region = cn-east-1 -->连接的地域
  • endpoint = http://192.168.1.14:9000 -->S3存储访问地址
  • location_constraint = -->位置约束-必须设置为与区域匹配,可以设置为空
  • server_side_encryption =

查看安装的配置文件,检查配置情况

rclone config show

4,rclone的使用

4.1,查看minio下存储的所有bucket,若无报错则通信正常。

rclone lsd minio:

4.2,将minio中指定桶test中的所有文件复制到本地文件夹下(可以用来做数据的备份)

rclone copy minio:test  /opt/test/

4.3,将本地备份文件复制到存储桶newtest中,可以添加参数 -P 来查看进度

rclone copy -P /opt/test/ minio:newtest

4.4,将本地需要迁移到minio中的文件同步到bucket储存桶中,可以添加参数 -P 来查看进度

rclone sync -P /opt/test/ minio:bucket

5,在线迁移minio的桶数据

5.1,配置文件rclone.conf配置内容

[minio]
type = s3
provider = Minio
env_auth = false
access_key_id = minio
secret_access_key = minio123
region = cn-east-1
endpoint = http://192.168.1.12:9000
location_constraint =
server_side_encryption =
 
[minio1]
type = s3
provider = Minio
env_auth = false
access_key_id = test
secret_access_key = test123
region = cn-east-1
endpoint = http://192.168.1.13:9000
location_constraint =
server_side_encryption =

5.2,迁移操作

# 执行同步指令并能查看进度
rclone sync -P minio:test minio1:test
 
# minio配置文件中的[minio]的地址,minio1则是[minio1]的地址
# minio:test对应的意思是 192.168.1.12:9000的test桶
# minio1:test则是对应的 192.168.2.13:9000的test桶
 
 
# 执行复制指令并能查看进度
rclone -P copy minio1:test2  minio:test3

本文参照编写: RcloneRclone syncs your files to cloud storage: Google Drive, S3, Swift, Dropbox, Google Cloud Storage, Azure, Box and many more.https://rclone.org/

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐