“mc cp --recursive”和“mc mirror --overwrite”有什么不同

Gar*_*eng 8 minio

如果我们想将一个bucket复制到另一个MiniO集群,我们应该使用“mc cp”还是“mc mirror”?我做了一些简单的实验,看起来它们是一样的。

谢谢~!

Gor*_*gus 3

简短回答

是的,mc cp --recursive SOURCE TARGET并且mc mirror --overwrite SOURCE TARGET会产生相同的效果(根据我截至 2022 年 1 月的经验)。

  • mc cp允许对单个文件进行微调选项(但可以使用批量复制--recursive
  • mc mirror专注于批量复制并可以创建存储桶

查看Minio 客户端指南,尽管运行结果可能相同,但mc mirror命令之间存在一些差异。mc cp

您应该使用哪一种取决于您的要求,并且这两种选择都可能对您来说是可以接受的。

细节

命令签名不同:mc cp允许多个源,而mc mirror仅允许单个源。

此外,可用的标志有些不同(见下文)。

标记mc cp优惠并非由mc mirror

  1. --rewind value:在指定时间将对象回滚到当前版本
  2. --version-id value, --vid value: 选择要复制的对象版本
  3. --attr:为对象添加自定义元数据(格式KeyName1=string;KeyName2=string:)
  4. --continue, -c: 创建或恢复复制会话
  5. --tags:将标签应用于上传的对象(例如key=value&key2=value2,等)
  6. --rewind value:在指定时间将对象回滚到当前版本
  7. --recursive,-r标志,但这始终适用于mirror

标志由 提供mc mirror不由 提供mc clone

标记mc mirror优惠并非由mc cp

  1. --exclude value:排除与指定对象名称模式匹配的对象
  2. --fake:执行假镜像操作
  3. --overwrite:如果目标与源不同,则覆盖目标上的对象
  4. --region value:在目标上创建新存储桶时指定区域(默认值:“us-east-1”)
  5. --watch, -w: 监视并同步更改(这可能是一件大事)

考虑使用rclone作为具有额外灵活性的替代方案。Minio 项目专注于性能并成为一个优秀、简单的 S3 后端,而不是实现您可能要求的所有功能(例如,块大小、限制)。