JuiceSync是一款可以在任意云或地域之间移动对象存储中的数据的工具,也支持本地文件、sftp和HDFS。
JuiceSync会扫描两个对象存储中的所有密钥,并按升序进行比对,找出丢失或过期的密钥,然后从源下载并并行上传到目的地。
我们使用Go mod来管理模块,如果不确定如何使用,请参考官方文档。
$JuiceSync-hNAME:用于云存储的JuiceSync-rSync用法:JuiceSync[选项]SRC DST SRC和DST应为[NAME://][ACCESS_KEY:SECRET_KEY@]BUCKET[.ENDPOINT][/PREFIX]VERSION:v0.5.0-1-gce9968cCOMMANDS:Help,h显示命令列表或一个命令的帮助全局选项:--START KEY,-s KEY要同步的第一个键--END键,-e KE键要同步的最后一个键--THREADS值,-p并发线程数(缺省值:10)--http端口要侦听的HTTP端口(缺省值:6070)--update,-u如果源较新,则更新现有文件(缺省值:False)--force-update,-f始终更新现有文件(缺省值:False)--perms保留权限(缺省值:False)--目录同步目录或持有者(缺省值:False)--Dry Don';T复制文件(缺省值:FALSE)--DELETE-src,--deleteSrc同步后从源删除对象(缺省值:FALSE)--DELETE-dst,--deleteDst从目标删除无关对象(缺省值:FALSE)--排除模式排除包含模式的键(POSIX正则表达式)--包含模式只包括包含模式的键(POSIX正则表达式)--管理器值管理器地址--Worker值主机(用逗号分隔)以启动Worker--Verbose,-v Turn。-q将日志级别更改为错误(默认:False)--Help,-h show Help(默认:False)--Version,-V仅打印版本(默认:False)。
S3、oss、cos、obs、bos、src、dst存储桶的自动发现端点可以使用NAME://[ACCESS_KEY:SECRET_KEY@]BUCKET[/PREFIX]格式。ACCESS_KEY和SECRET_KEY可以由相应的环境变量提供(见下文)。
S3:S3的访问密钥和秘密密钥可以由AWS_ACCESS_KEY_ID和AWS_SECRET_ACCESS_KEY或IAM角色提供。
操作系统:凭据可以由环境变量ALICLOUD_ACCESS_KEY_ID和ALICLOUD_ACCESS_KEY_SECRET、RAM角色、EMR MetaService提供。
七牛:七牛应该使用S3端点,例如abc.cn-North-1-s3.qiniu.com。如果有以";/";开头的密钥,则域名应提供为七牛域名。
Sftp:如果您的目标机器使用SSH证书而不是密码,您应该将私钥文件的路径传递给环境变量SSH_PRIVATE_KEY_PATH,如SSH_PRIVATE_KEY_PATH=/home/someuser/.ssh/id_rsa JuiceSync[src][dst]。