Relayium

在一台电脑上传到云端,在另一台电脑取回

最后更新: 2026-09-01

有时两台电脑根本不会同时开着。你想今晚从工作笔记本丢一个文件,明天再从家里台式机取,中间没人等着保持在线连接。relayium up 和 relayium down 正是干这个的:up 在本地加密后上传到你的账号,down 之后在任意机器上取回并解密——无需点对点握手,也无需一台双方都能 ssh 进去的服务器。

这是 CLI 里主要会用到 Relayium 账号的部分,另一个是 send——它需要账号来生成配对码。其余功能的绑定是可选的:push/pull、daemon 直连、sync 都无需登录照常可用,receive 也一样。下载则完全不需要账号,有链接即可。

什么时候用它

按对端是否在线、以及两台机器如何互相触达来选模式:

开始之前

你需要准备

  • 先装 CLI,这样 relayium 命令才存在。下面这行会把预编译好的二进制放到你的 PATH 上(macOS 和 Linux;Windows 请从发布页下载 .zip);relayium --version 可确认是否装好,relayium.com/cli 列出了所有安装方式。不装这一步,relayium login 只会报「command not found」。
  • 有一个免费的 Relayium 账号。浏览器那一步是拿你的账号来批准这次登录,所以你得先有账号才能批准——先在 relayium.com 登录,没有就在那里注册一个。只有上传才需要账号;下载从不需要。
  • 一个能把链接送到另一台机器的办法——备忘录、聊天窗口、密码管理器都行。任何拿到链接的人都能下载该文件,所以要像对待密码一样对待它。

第一次 up 之前有两件一次性的事——装好 CLI,以及有个账号。两样都齐了就往下跳。

curl -fsSL https://relayium.com/install.sh | sh

把这台机器绑定到你的账号(一次即可)

up 需要知道存到谁的账号下,所以每台机器登录一次。这是浏览器授权的设备登录——终端里除了你要确认的那个码,什么都不用输:

relayium login

从第一台电脑上传

up 会遍历你给的文件,在本地加密,上传密文,并打印一个取件链接:

  1. 确认这台机器还绑定在你的账号上。它会打印账号和所绑定的服务器;如果显示未登录,先回到上面那步登录。

    relayium whoami
  2. 上传文件。up 会在本地加密,只把密文发出去,并把取件链接打印到 stdout。

    relayium up ./report.pdf
  3. 如果 24 小时的默认值不合适,就加一个保留策略参数。服务器实际保留多久,上限由你的套餐决定。

    # 选择它能存活多久(默认 24 小时):
    relayium up ./report.pdf --burn              # 下载一次后即删除
    relayium up ./report.pdf --ttl 7d            # 保留 7 天(上限取决于套餐)
    relayium up ./report.pdf --max-downloads 5   # 允许下载 5 次,之后删除
  4. 把链接送到第二台机器能读到的地方。只有链接会走 stdout,所以管道里很干净。

    relayium up ./report.pdf | pbcopy

上传成功是什么样

上传过程中 stderr 上会有一个进度条,结束后清除。链接会单独一行落在 stdout 上,随后是给人看的提示行——以及可能出现的保留时长提示——都在 stderr 上。

relayium up ./report.pdf
https://relayium.com/d/7fK2p…#k=Xr8s…
opens in a browser, or fetch it with `relayium down 'https://relayium.com/d/7fK2p…#k=Xr8s…'`

在第二台电脑下载

在另一台机器上,把链接交给 down。无需登录、无需配置——解密文件的密钥就在链接里,所以 down 完全不需要你的账号:

relayium down '<你的链接>' <目标目录>
  1. 用你顺手的方式把链接弄到第二台机器上。那边除了 CLI 本身,不需要安装或登录任何东西。

  2. 把链接用单引号括起来交给 down,后面跟上文件该落地的目录。

    relayium down 'https://relayium.com/d/7fK2p…#k=Xr8s…' ./downloads
  3. 省略目录就落到当前目录。

    relayium down 'https://relayium.com/d/7fK2p…#k=Xr8s…'

下载成功是什么样

它写下的每个文件都会逐行列在 stdout 上,数量和目标目录则在 stderr 上确认。

relayium down 'https://relayium.com/d/7fK2p…#k=Xr8s…' ./downloads
downloads/report.pdf
✓ downloaded 1 file(s) to ./downloads

也能和网页端互通

这个链接和网页端用的是同一种,所以 CLI 与浏览器可以自由互通:

服务器能看到什么、看不到什么

云端传输始终是端到端加密的:

链接不管用的时候

几乎所有失败的 up 或 down 都落在下面四种里,而且没有一种需要靠猜——决定性的状态要么由一条命令打印出来,要么就摆在你敲的那行命令里。

现象、检查、修复

up 直接拒绝并提示 “run relayium login first”。
relayium whoami
# not logged in (run `relayium login`)

上传是把文件存到你的账号名下,所以这台机器需要凭据。运行 relayium login,在浏览器的 relayium.com/device 上批准;之后 whoami 就会打印出你的账号和它绑定的服务器。

down 解析不了链接,密钥像是凭空消失了。
echo relayium down https://relayium.com/d/7fK2p#k=Xr8s
# relayium down https://relayium.com/d/7fK2p

在大多数 shell 里,没加引号的 # 会开启注释,于是从 #k= 起的部分根本没进到命令里——echo 会原样告诉你活下来的是哪一截。把整条链接用单引号括起来,那个片段(也就是解密密钥)就能完整送达。

链接比你要的 --ttl 更早失效。
relayium up ./report.pdf --ttl 7d
# note: your plan caps retention, so this link is kept 1d, not the 7d you asked for

超过套餐上限的请求,服务器会静默地按上限处理——Free 1 天、Plus 3 天、Pro 7 天、Max 14 天——随后 up 会打印这行提示,告诉你实际拿到了多久。此外 --burn 和 --max-downloads 也会让链接提前作废。想要新的就重新上传一次。

明明登录了,up 却说你登录在别处。
relayium whoami
# you@example.com (https://relayium.com)

不是签发你令牌的那个 --server,会被拒绝而不是把凭据发过去——发过去既会泄露它,在那边也根本认证不了。要么去掉 --server,让它用 whoami 刚打印出来的那个绑定服务器;要么先对另一台主机执行 relayium login。

常见问题

我需要账号吗?

上传时需要;发送时,只在必须签发配对码的情况下需要。relayium up 始终需要 relayium login,这样文件才能存到你的账号下。relayium send 只在服务器必须为你签发一个新的配对码时才需要——用别人给你的配对码运行 send,它不会签发任何东西,因此也不需要登录。relayium down 和 relayium receive 不需要账号,push/pull、daemon 直连、sync 也都不需要。

我的文件加密吗?

是的,端到端加密。上传前就在你的机器上加密;密钥只存在于链接的 #k= 片段里,从不发给服务器。Relayium 存的是它读不了的密文,连文件名也是。

如果我把链接弄丢了呢?

链接携带解密密钥的唯一副本,所以链接一丢,文件就无法找回——服务器上没有任何东西能恢复它。

能限制谁来下载吗?

任何拿到链接的人都能下载,所以要私密分享。用 --burn 只允许下载一次,或 --max-downloads <n> 限制次数,再用 --ttl <时长> 让它到期自动删除。

能和网页端互通吗?

能。relayium up 产出的链接能在浏览器里打开;在 relayium.com 上创建的分享链接也能在另一台机器上用 relayium down 取回。

下载被中断了会怎样?

在同一次运行内,down 自己会处理:最多重连五次,并用 HTTP Range 从最后一个完整密文帧继续;服务端若忽略 Range,它就在这一次运行里重头再下。尝试用尽后它会删掉半截的输出,而不是留下一个截断文件——所以之后再跑 relayium down 是从头开始的,而不是接着上一次。只有 relayium sync 才会跨运行续传。

准备好在自己的几台机器之间传文件了吗?装上 CLI,运行 relayium login,然后 up 它。

获取 CLI

继续阅读