Internet Archive

Internet Archive

互联网档案馆(Internet Archive)后端使用 archive.org 上的项目(Items)。

有关此后端使用的 API,请参考 IAS3 API 文档

路径指定为 remote:bucket(对于 lsd 命令,可使用 remote:)。你也可以指定子目录,例如 remote:item/path/to/dir

与 S3 不同,不支持列出你上传的所有项目。

创建远程存储后,你可以按以下方式使用它:

创建一个新项目

rclone mkdir remote:item

列出项目的内容

rclone ls remote:item

/home/local/directory 同步到远程项目,并删除项目中多余的文件。

rclone sync --interactive /home/local/directory remote:item

注意事项

由于互联网档案馆的架构,它会将写入操作(以及额外的后处理)放入每个项目的队列中。你可以在 https://catalogd.archive.org/history/item-name-here 查看项目的队列。因此,所有上传/删除操作不会立即显示,需要一些时间才能生效。 每个项目的队列会被加入到另一个队列,即项目派生器队列(Item Deriver Queue)。你可以在此处查看项目派生器队列的状态。此队列有容量限制,可能会阻止你上传甚至删除文件。为了获得更好的性能,你应该避免上传大量小文件。

你可以选择通过将 wait_archive 键设置为非零值来等待服务器处理完成。 通过设置等待,rclone 可以进行正常的文件比较。 请确保设置足够大的值(例如,对于较小的文件设置为 30m0s),因为根据服务器队列的情况,这可能需要很长时间。

关于元数据

此后端支持设置、更新和读取每个文件的元数据。 元数据将显示为互联网档案馆上的文件元数据。 然而,互联网档案馆和 rclone 都保留了一些字段。

互联网档案馆保留的字段如下:

  • name
  • source
  • size
  • md5
  • crc32
  • sha1
  • format
  • old_version
  • viruscheck
  • summation

尝试为这些键设置值将被忽略,并给出警告。 只有设置 mtime 是个例外。这样做的行为与设置修改时间(ModTime)相同。

rclone 保留所有以 rclone- 开头的键。为这些键设置值会给出警告,但值会根据请求进行设置。

如果一个键有多个值,只返回第一个值。 这是 rclone 的一个限制,它只支持每个键对应一个值。 当你进行服务器端复制时,可能会触发此限制。

读取元数据时也会返回自定义(非标准且非保留)的元数据。

过滤自动生成的文件

互联网档案馆在上传后会自动创建元数据文件。在进行 rclone sync 时,这些文件可能会导致问题,因为 rclone 会尝试删除它们,但会失败。这些元数据文件是不可更改的,因为它们是由互联网档案馆自动创建的。

可以使用元数据过滤来排除这些自动创建的文件。

rclone sync ... --metadata-exclude "source=metadata" --metadata-exclude "format=Metadata"

这将排除同步中所有带有 source=metadataformat=Metadata 标志的文件,这些标志是添加到互联网档案馆自动创建的文件中的。

配置

以下是一个配置互联网档案馆(Internet Archive)的示例。 大部分内容也适用于其他存储提供商,任何差异将在下面描述。

首先运行

rclone config

这将引导你完成一个交互式的设置过程。

No remotes found, make a new one?
n) New remote
s) Set configuration password
q) Quit config
n/s/q> n
name> remote
Option Storage.
Type of storage to configure.
Choose a number from below, or type in your own value.
XX / InternetArchive Items
   \ (internetarchive)
Storage> internetarchive
Option access_key_id.
IAS3 Access Key.
Leave blank for anonymous access.
You can find one here: https://archive.org/account/s3.php
Enter a value. Press Enter to leave empty.
access_key_id> XXXX
Option secret_access_key.
IAS3 Secret Key (password).
Leave blank for anonymous access.
Enter a value. Press Enter to leave empty.
secret_access_key> XXXX
Edit advanced config?
y) Yes
n) No (default)
y/n> y
Option endpoint.
IAS3 Endpoint.
Leave blank for default value.
Enter a string value. Press Enter for the default (https://s3.us.archive.org).
endpoint> 
Option front_endpoint.
Host of InternetArchive Frontend.
Leave blank for default value.
Enter a string value. Press Enter for the default (https://archive.org).
front_endpoint> 
Option disable_checksum.
Don't store MD5 checksum with object metadata.
Normally rclone will calculate the MD5 checksum of the input before
uploading it so it can ask the server to check the object against checksum.
This is great for data integrity checking but can cause long delays for
large files to start uploading.
Enter a boolean value (true or false). Press Enter for the default (true).
disable_checksum> true
Option encoding.
The encoding for the backend.
See the [encoding section in the overview](/overview/#encoding) for more info.
Enter a encoder.MultiEncoder value. Press Enter for the default (Slash,Question,Hash,Percent,Del,Ctl,InvalidUtf8,Dot).
encoding> 
Edit advanced config?
y) Yes
n) No (default)
y/n> n
Configuration complete.
Options:
- type: internetarchive
- access_key_id: XXXX
- secret_access_key: XXXX
Keep this "remote" remote?
y) Yes this is OK (default)
e) Edit this remote
d) Delete this remote
y/e/d> y

标准选项

以下是互联网档案馆(Internet Archive)特有的标准选项。

–internetarchive-access-key-id

IAS3 访问密钥。

若要进行匿名访问,请留空。 你可以在 此处 找到该密钥。

属性:

  • 配置项:access_key_id
  • 环境变量:RCLONE_INTERNETARCHIVE_ACCESS_KEY_ID
  • 类型:字符串
  • 是否必需:否

–internetarchive-secret-access-key

IAS3 秘密密钥(密码)。

若要进行匿名访问,请留空。

属性:

  • 配置项:secret_access_key
  • 环境变量:RCLONE_INTERNETARCHIVE_SECRET_ACCESS_KEY
  • 类型:字符串
  • 是否必需:否

高级选项

以下是互联网档案馆(Internet Archive)特有的高级选项。

–internetarchive-endpoint

IAS3 端点。

若要使用默认值,请留空。

属性:

  • 配置项:endpoint
  • 环境变量:RCLONE_INTERNETARCHIVE_ENDPOINT
  • 类型:字符串
  • 默认值:“https://s3.us.archive.org

–internetarchive-front-endpoint

互联网档案馆前端主机。

若要使用默认值,请留空。

属性:

  • 配置项:front_endpoint
  • 环境变量:RCLONE_INTERNETARCHIVE_FRONT_ENDPOINT
  • 类型:字符串
  • 默认值:“https://archive.org

–internetarchive-disable-checksum

不要求服务器根据 rclone 计算的 MD5 校验和进行验证。 通常,rclone 会在上传前计算输入的 MD5 校验和,以便让服务器根据该校验和验证对象。 这对于数据完整性检查非常有用,但可能会导致大文件上传开始前出现长时间延迟。

属性:

  • 配置项:disable_checksum
  • 环境变量:RCLONE_INTERNETARCHIVE_DISABLE_CHECKSUM
  • 类型:布尔值
  • 默认值:true

–internetarchive-wait-archive

等待服务器处理任务(特别是存档和图书操作)完成的超时时间。 仅在需要确保写入操作后数据能立即反映时启用。 设置为 0 可禁用等待。超时不会抛出错误。

属性:

  • 配置项:wait_archive
  • 环境变量:RCLONE_INTERNETARCHIVE_WAIT_ARCHIVE
  • 类型:持续时间
  • 默认值:0s

–internetarchive-encoding

后端的编码方式。

有关更多信息,请参阅 概述中的编码部分

属性:

  • 配置项:encoding
  • 环境变量:RCLONE_INTERNETARCHIVE_ENCODING
  • 类型:编码方式
  • 默认值:Slash,LtGt,CrLf,Del,Ctl,InvalidUtf8,Dot

–internetarchive-description

远程存储的描述。

属性:

  • 配置项:description
  • 环境变量:RCLONE_INTERNETARCHIVE_DESCRIPTION
  • 类型:字符串
  • 是否必需:否

元数据

互联网档案馆提供的元数据字段。 如果一个键有多个值,只返回第一个值。 这是 rclone 的一个限制,它只支持每个键对应一个值。

所有者可以添加自定义键。元数据功能会抓取所有键,包括自定义键。

以下是互联网档案馆后端可能的系统元数据项。

名称 说明 类型 示例 是否只读
crc32 互联网档案馆计算的 CRC32 字符串 01234567
format 互联网档案馆识别的文件格式名称 字符串 逗号分隔值
md5 互联网档案馆计算的 MD5 哈希值 字符串 01234567012345670123456701234567
mtime 最后修改时间,由 rclone 管理 RFC 3339 格式 2006-01-02T15:04:05.999999999Z
name 完整文件路径,不包含存储桶部分 文件名 backend/internetarchive/internetarchive.go
old_version 文件是否被 keep-old-version 标志替换并移动 布尔值 true
rclone-ia-mtime 最后修改时间,由互联网档案馆管理 RFC 3339 格式 2006-01-02T15:04:05.999999999Z
rclone-mtime 最后修改时间,由 rclone 管理 RFC 3339 格式 2006-01-02T15:04:05.999999999Z
rclone-update-track rclone 用于跟踪互联网档案馆内更改的随机值 字符串 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
sha1 互联网档案馆计算的 SHA1 哈希值 字符串 0123456701234567012345670123456701234567
size 文件大小(字节) 十进制数 123456
source 文件的来源 字符串 original
summation 有关如何使用,请查看 此论坛帖子 字符串 md5
viruscheck 文件最后一次进行病毒检查的时间(?) Unix 时间戳 1654191352

有关更多信息,请参阅 元数据文档