我已经在三台机器上安装了 unison 2.48.4,两台运行 Linux Mint 17,一台运行 Linux Mint 18。我通过 SSH 进行同步。
两个17的同步没有问题。然而,18 不能与其他两个同步。生成了潜在转移列表,但是当我按“GO”时,我得到以下信息:
Fatal error: Server: Fatal error during unmarshaling (input
value: bad bigarray kind), possibly because client and server
have been compiled with different versions of the Ocaml compiler.
Run Code Online (Sandbox Code Playgroud)
当我使用图形或命令行版本的统一客户端时,我收到了相同的消息。此外,当我在客户端尝试统一 2.48.3 时,这让我相信是薄荷版本(17 对 18)的差异造成了问题。
我自己没有编译任何东西,只是从 repos 或下载的 deb 包安装。
Unison 协议是特定于版本的。版本 N 无法通过 M \xe2\x89\xa0 N 与版本 M 对话。
\n\nDebian(及其衍生产品:Ubuntu、Mint、\xe2\x80\xa6)提供了一个unison-all软件包,尽管名称包含一些 Unison 的最新版本,但不是最新版本,而不是所有过去的版本。我还没有检查过,但我希望unison-all
Mint 18 包含 Mint 17 上的版本。
或者,您可以通过将您在任何地方使用的 Unison 的所有版本复制到用作 Unison 集线器的计算机/usr/local/bin
或其中来安装它们。~/bin
该unison-NN.NN
二进制文件仅依赖于标准库,因此它可以在任何 21 世纪的非嵌入式 Linux 上运行,而无需安装任何额外的东西。我就是做这个的。当错误修复出现时,您确实需要记住更新此二进制文件。
除非您安排在所有地方运行相同版本的 Unison,否则您需要通过输入addversionno = true
您的配置文件来告诉它在远程端调用匹配的版本。