我刚刚在磁盘损坏后重建了我的文件服务器。当我尝试使用 Unison 重新同步数据时,我收到了错误消息
与服务器失去连接
我从命令行重试并得到:
~$ unison someprofile -ui text
Contacting server...
Unison failed: Fatal error: Error in creating unison directory /home/user/.unison:
File exists [mkdir(/home/user/.unison)]
Fatal error: Lost connection with the server
我可以打开到服务器的 SSH 连接。客户端和服务器都运行相同的 Unison 版本。这是怎么回事?
失去与服务器的连接并不一定意味着网络问题 - 它也可能意味着远程 Unison 实例出于任何原因终止了连接。(因为 Unison 旨在与不同的 SSH 后端一起工作,所以没有可靠的方法来获取有关连接结束原因的更多详细信息。)
至少从 Unison 2.52 开始,GUI 应该显示来自服务器的任何错误消息。
对于旧版本的用户,在文本模式下统一运行,即
where
<profile>
等于任何配置文件(*.prf
本地.unison
目录中的文件,减去.prf
扩展名),将为您提供详细的错误消息。在这里,
Contacting server
前后两行Fatal error: Lost connection with the server
是我们从远程系统得到的错误:它试图创建一个目录~/.unison
(因为该路径没有目录)但失败了,因为该路径有另一个文件系统对象。在这种情况下,
~/.unison
服务器上的符号链接损坏,因为我将.unison
目录放在与主目录不同的文件系统上。解决方案是修复该符号链接(即在符号链接指向的路径处重新创建目录)。