pCloud

pCloud

路径指定为 remote:path

路径可以按需设置深度,例如 remote:directory/subdirectory

配置

pCloud 的初始设置需要从 pCloud 获取一个令牌,你需要在浏览器中完成此操作。rclone config 会引导你完成该过程。

以下是一个如何创建名为 remote 的远程存储的示例。首先运行:

 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
Type of storage to configure.
Choose a number from below, or type in your own value
[snip]
XX / Pcloud
   \ "pcloud"
[snip]
Storage> pcloud
Pcloud App Client Id - leave blank normally.
client_id> 
Pcloud App Client Secret - leave blank normally.
client_secret> 
Edit advanced config?
y) Yes
n) No (default)
y/n> n
Remote config
Use web browser to automatically authenticate rclone with remote?
 * Say Y if the machine running rclone has a web browser you can use
 * Say N if running rclone on a (remote) machine without web browser access
If not sure try Y. If Y failed, try N.
y) Yes
n) No
y/n> y
If your browser doesn't open automatically go to the following link: http://127.0.0.1:53682/auth
Log in and authorize rclone for access
Waiting for code...
Got code
Configuration complete.
Options:
- type: pcloud
- client_id:
- client_secret:
- token: {"access_token":"XXX","token_type":"bearer","expiry":"0001-01-01T00:00:00Z"}
Keep this "remote" remote?
y) Yes this is OK
e) Edit this remote
d) Delete this remote
y/e/d> y

请参考 远程设置文档,了解如何在没有可用互联网浏览器的机器上进行设置。

注意,如果你的 pCloud 服务器位于欧盟地区,并且使用 rclone authorize 进行远程配置,你需要在“编辑高级配置”中设置主机名,否则可能会出现令牌错误。

请注意,rclone 会在你的本地机器上运行一个 Web 服务器,用于收集 pCloud 返回的令牌。这个服务器仅在打开浏览器到你获取到验证码的这段时间内运行。它运行在 http://127.0.0.1:53682/ 上,如果你运行了主机防火墙,可能需要临时解除对该地址的封锁。

配置完成后,你可以像这样使用 rclone

列出你的 pCloud 顶级目录

rclone lsd remote:

列出你的 pCloud 中的所有文件

rclone ls remote:

将本地目录复制到 pCloud 中名为 backup 的目录

rclone copy /home/source remote:backup

修改时间和哈希值

pCloud 允许将对象的修改时间精确设置到 1 秒。这些修改时间将用于检测对象是否需要同步。为了设置修改时间,pCloud 要求重新上传对象。

pCloud 在美国地区支持 MD5 和 SHA1 哈希,在欧盟地区支持 SHA1 和 SHA256 哈希,因此你可以使用 --checksum 标志。

受限文件名字符

除了 默认受限字符集 之外,以下字符也会被替换:

字符 编码值 替换字符
\ 0x5C

无效的 UTF - 8 字节也会被 替换,因为它们不能用于 JSON 字符串。

删除文件

删除的文件将被移动到回收站。你的订阅级别将决定文件在回收站中保留的时间。可以使用 rclone cleanup 命令清空回收站。

清空回收站

由于 API 限制,只有在为该后端的高级选项设置了用户名和密码后,rclone cleanup 命令才会生效。由于我们通常希望避免在 rclone 配置文件中存储用户密码,因此建议仅在需要使用 rclone cleanup 命令时才进行此设置。

根文件夹 ID

你可以为 rclone 设置 root_folder_id。这是 rclone 视为 pCloud 驱动器根目录的文件夹(由其 文件夹 ID 标识)。

通常,你可以将其留空,rclone 会自行确定正确的根目录。

但是,你可以设置此选项,将 rclone 限制在特定的文件夹层次结构中。

为此,你需要找到希望 rclone 显示的文件夹的 文件夹 ID。当你在 pCloud 网页界面中打开相关文件夹时,该 ID 将是 URL 中的 folder 字段。

因此,如果希望 rclone 使用的文件夹在浏览器中的 URL 类似于 https://my.pcloud.com/#page=filemanager&folder=5xxxxxxxx8&tpl=foldergrid,则在配置中使用 5xxxxxxxx8 作为 root_folder_id

标准选项

以下是 pCloud 特有的标准选项。

–pcloud-client-id

OAuth 客户端 ID。

通常留空。

属性:

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

–pcloud-client-secret

OAuth 客户端密钥。

通常留空。

属性:

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

高级选项

以下是 pCloud 特有的高级选项。

–pcloud-token

OAuth 访问令牌,以 JSON 格式表示。

属性:

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

–pcloud-auth-url

认证服务器 URL。

留空则使用提供商的默认值。

属性:

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

–pcloud-token-url

令牌服务器 URL。

留空则使用提供商的默认值。

属性:

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

–pcloud-client-credentials

使用客户端凭证 OAuth 流程。

这将使用 RFC 6749 中描述的 OAuth2 客户端凭证流程。

属性:

  • 配置项:client_credentials
  • 环境变量:RCLONE_PCLOUD_CLIENT_CREDENTIALS
  • 类型:布尔值
  • 默认值:false

–pcloud-encoding

后端的编码方式。

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

属性:

  • 配置项:encoding
  • 环境变量:RCLONE_PCLOUD_ENCODING
  • 类型:Encoding
  • 默认值:Slash,BackSlash,Del,Ctl,InvalidUtf8,Dot

–pcloud-root-folder-id

填写此项,使 rclone 以非根文件夹作为起始点。

属性:

  • 配置项:root_folder_id
  • 环境变量:RCLONE_PCLOUD_ROOT_FOLDER_ID
  • 类型:字符串
  • 默认值:“d0”

–pcloud-hostname

要连接的主机名。

通常在 rclone 首次进行 OAuth 连接时设置,但如果你使用 rclone authorize 进行远程配置,则需要手动设置。

属性:

  • 配置项:hostname
  • 环境变量:RCLONE_PCLOUD_HOSTNAME
  • 类型:字符串
  • 默认值:“api.pcloud.com”
  • 示例:
    • “api.pcloud.com”
      • 原始/美国地区
    • “eapi.pcloud.com”
      • 欧盟地区

–pcloud-username

你的 pCloud 用户名。

仅在你想使用 cleanup 命令时需要。由于 pCloud API 存在一个 bug,所需的 API 不支持 OAuth 认证,因此我们必须依赖用户密码认证。

属性:

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

–pcloud-password

你的 pCloud 密码。

注意:输入的内容必须进行加密处理 - 请参阅 rclone obscure

属性:

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

–pcloud-description

远程存储的描述。

属性:

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