rclone cryptcheck

rclone cryptcheck

Cryptcheck 用于检查加密远程存储的完整性。

概要

将一个普通远程存储与一个 加密的 远程存储进行对比检查。这等同于运行 rclone 的 check 命令,但它能够检查加密远程存储中文件的校验和。

要使该命令正常工作,加密远程存储所依赖的底层远程存储必须支持某种校验和机制。

其工作原理是:从加密远程存储中的每个文件读取随机数(nonce),并使用该随机数对普通远程存储中的对应文件进行加密。然后,将加密远程存储中底层文件的校验和与刚刚加密得到的文件的校验和进行对比。

使用方式如下:

rclone cryptcheck /path/to/files encryptedremote:path

你也可以这样使用,但这会涉及下载普通远程存储路径 remote:path 中的所有文件:

rclone cryptcheck remote:path encryptedremote:path

命令执行完成后,会记录加密远程存储的状态。

如果你提供 --one-way 标志,它将只检查源中的文件是否与目标中的文件匹配,而不会进行反向检查。这意味着目标中存在但源中不存在的额外文件将不会被检测到。

--differ--missing-on-dst--missing-on-src--match--error 这些标志会将路径逐行写入指定的文件名(如果指定为 - 则输出到标准输出)。下面的帮助信息会说明它们各自写入的内容。例如,--differ 会写入所有在源和目标中都存在但内容不同的文件路径。

--combined 标志会生成一个文件(或输出到标准输出),其中包含所有文件路径,每个路径前带有一个符号,符号后有一个空格,用于说明该文件的情况。这类似于 diff 文件的格式。

  • = path 表示该路径在源和目标中都存在,且内容相同
  • - path 表示该路径在源中缺失,仅存在于目标中
  • + path 表示该路径在目标中缺失,仅存在于源中
  • * path 表示该路径在源和目标中都存在,但内容不同
  • ! path 表示在读取源文件或目标文件,或者计算其哈希值时出现了错误

默认的并行检查数量为 8。有关更多信息,请参阅 –checkers=N 选项。

rclone cryptcheck remote:path cryptedremote:path [flags]

Options

      --combined string         将变更的综合报告写入此文件
      --differ string           将所有不匹配的文件报告写入此文件
      --error string            将所有存在错误(哈希计算或读取)的文件报告写入此文件
  -h, --help                    显示 cryptcheck 命令的帮助信息
      --match string            将所有匹配的文件报告写入此文件
      --missing-on-dst string   将所有目标端缺失的文件报告写入此文件
      --missing-on-src string   将所有源端缺失的文件报告写入此文件
      --one-way                 仅进行单向检查,源文件必须存在于远程端

接下来将介绍与其他命令共享的选项。 此处未列出的全局选项,请参阅 全局标志页面

检查选项

检查命令使用的标志

      --max-backlog int   Maximum number of objects in sync or check backlog (default 10000)

Filter Options

用于过滤目录列表的标记

      --delete-excluded                     删除目标端中被排除在同步之外的文件
      --exclude stringArray                 排除符合指定模式的文件
      --exclude-from stringArray            从文件中读取要排除的文件模式(使用 `-` 表示从标准输入读取)
      --exclude-if-present stringArray      如果指定文件名存在,则排除该目录
      --files-from stringArray              从文件中读取源文件名列表(使用 `-` 表示从标准输入读取)
      --files-from-raw stringArray          从文件中读取源文件名列表,不对行进行任何处理(使用 `-` 表示从标准输入读取)
  -f, --filter stringArray                  添加文件过滤规则
      --filter-from stringArray             从文件中读取文件过滤模式(使用 `-` 表示从标准输入读取)
      --ignore-case                         在过滤时忽略大小写(大小写不敏感)
      --include stringArray                 包含符合指定模式的文件
      --include-from stringArray            从文件中读取要包含的文件模式(使用 `-` 表示从标准输入读取)
      --max-age Duration                    仅传输比指定时间(以秒或后缀 `ms|s|m|h|d|w|M|y` 表示)更新的文件(默认关闭)
      --max-depth int                       如果设置了该参数,则将递归深度限制为此值(默认值为 `-1`,表示无限制)
      --max-size SizeSuffix                 仅传输小于指定大小(以 KiB 或后缀 `B|K|M|G|T|P` 表示)的文件(默认关闭)
      --metadata-exclude stringArray        排除符合指定模式的元数据
      --metadata-exclude-from stringArray   从文件中读取要排除的元数据模式(使用 `-` 表示从标准输入读取)
      --metadata-filter stringArray         添加元数据过滤规则
      --metadata-filter-from stringArray    从文件中读取元数据过滤模式(使用 `-` 表示从标准输入读取)
      --metadata-include stringArray        包含符合指定模式的元数据
      --metadata-include-from stringArray   从文件中读取要包含的元数据模式(使用 `-` 表示从标准输入读取)
      --min-age Duration                    仅传输比指定时间(以秒或后缀 `ms|s|m|h|d|w|M|y` 表示)更旧的文件(默认关闭)
      --min-size SizeSuffix                 仅传输大于指定大小(以 KiB 或后缀 `B|K|M|G|T|P` 表示)的文件(默认关闭)

Listing Options

用于列出目录的标志

      --default-time Time   Time to show if modtime is unknown for files and directories (default 2000-01-01T00:00:00Z)
      --fast-list           Use recursive list if available; uses more memory but fewer transactions

参见

  • rclone - 显示 rclone 命令、标志和后端帮助。