Trilium 是一个离线优先的笔记应用程序,它将所有数据本地存储在桌面客户端上。但是,它还提供了设置与服务器实例同步的选项,允许多个桌面客户端与中央服务器同步。这将创建一个星形拓扑:
在此设置中,中央服务器(称为同步服务器)和多个客户端(或桌面)实例与同步服务器同步。配置完成后,同步是自动且持续的,无需人工干预。
一 、设置同步
1.1 安全注意事项
安全设置服务器至关重要,而且可能很复杂。使用有效的 TLS 证书 (HTTPS) 而不是未加密的 HTTP 连接对于确保安全性并避免潜在漏洞至关重要。
1.2 将桌面实例与同步服务器同步
当您已经拥有 Trilium 的桌面实例并希望在 Web 主机上设置同步服务器时,使用此方法。
服务器部署:确保您的服务器实例已部署但未初始化。
桌面配置:打开桌面实例,导航到“选项”-“>”同步“选项卡->”同步配置“,然后将”服务器实例地址“设置为同步服务器的地址。点击保存。
测试同步:单击“测试同步”按钮以验证与同步服务器的连接。如果成功,客户端将开始将所有数据推送到服务器实例。此过程可能需要一些时间,但您可以继续使用 Trilium。定期检查服务器实例以确认同步何时完成。完成后,您应该会在服务器上看到登录屏幕。
1.3 从同步服务器同步桌面实例
当您已有同步服务器并希望配置新的桌面实例以与其同步时,使用此方法。
桌面设置:按照桌面安装页面进行作。
初始配置:出现提示时,选择设置与同步服务器同步的选项。
服务器详细信息:配置 Trilium 服务器地址并输入正确的用户名和密码进行身份验证。
完成设置:单击“完成设置”按钮。如果成功,您将看到以下屏幕:
同步完成后,您将被自动重定向到 Trilium 应用程序。
二、代理配置
支持两种代理设置:
显式代理配置:在选项/同步中设置代理服务器。仅支持未经身份验证的代理服务器。
系统代理设置:如果没有显式配置代理服务器,Trilium 将使用系统代理设置。
三、故障 排除
3.1 日期/时间同步
要成功同步,客户端和服务器必须具有相同的日期和时间,容差最多为 5 分钟。
3.2 证书问题
使用 TLS 时,Trilium 将验证服务器证书。如果验证失败(例如,由于自签名证书或某些公司代理),您可以运行 Trilium 客户端,并将环境变量设置为:NODE_TLS_REJECT_UNAUTHORIZED0
export NODE_TLS_REJECT_UNAUTHORIZED=0
这将禁用 TLS 证书验证,从而显着降低安全性并使设置面临 MITM 攻击。强烈建议使用有效的签名服务器证书。较新的 Trilium 版本包含一个为此目的调用的脚本。trilium-no-cert-check.sh
3.3 冲突解决
如果您在同步之前在多个实例上编辑相同的注释,Trilium 会通过保留较新的更改并丢弃较旧的更改来解决冲突。旧版本在笔记修订中仍然可访问,允许在需要时恢复数据。
3.4 哈希检查
每次同步后,Trilium 都会计算客户端和同步服务器上所有同步数据的哈希值。如果存在差异,Trilium 将自动启动恢复机制来解决问题。