我想使用 Unison 在我的台式电脑和云端容器之间同步一个目录。我有这种与 Unison 的合作,但我看到的问题是每次启动容器时,它都可以有不同的主机名和 IP 号,并且 sshd 将在不同的端口号上运行。
为了让这对我来说基本上是透明的,每次我启动容器时,我都会像这样编辑我的 ~/.ssh/config 文件:
Host pod
User root
Hostname 184.26.5.182
Port 10666
我相应地替换了 IP 号和端口号。
完成此操作后,我可以使用ssh pod
等登录容器。我可以毫无问题地运行 rsync 脚本,即使它们的主机别名“pod”已硬连接到它们中。(如果我知道如何使 rsync 与删除进行双向同步,那么我会使用它,但我很确定那是不可能的。)
我的 Unison 配置文件如下所示:
root = /Users/me/path/to/dir
root = ssh://pod//path/to/dir
ignore = Path subdir1
ignore = Path subdir2
不幸的是,这并不是很好,因为每次我启动容器时,我都会得到一个不同的端口号(IP 号通常不会改变),而 Unison 认为这是一个新的同步。这根本不是我想要的。
有没有办法告诉 Unison 忽略远程容器似乎已更改为另一台计算机的事实,并且只相信我的“pod”主机别名可以依赖主机身份?