我正在寻找一种使台式机和笔记本电脑保持同步的方法。我想要保持同步的是 Gnote 笔记。
如果重要的话,我可以通过 URL 从任何地方连接到我的桌面,但我的笔记本电脑更难访问,因为它可能在 NAT 之后。
fos*_*dom 10
Gnote 将其笔记保存在文件夹中 ~/.local/share/gnote
因此,如果两台计算机在同一网络上,您可以使用Unison(从软件中心安装 unison-gtk)之类的东西来同步两台计算机之间的 gnote 文件夹。
由于您在 NAT 后面,因此您可以使用反向 ssh 连接的概念 - 而不是重复,这个AU 问答中有一个很好的分步说明。但是在我的测试中,我发现 Natty 中的 unison 版本不适用于 Natty 中的 openssh 版本。
所以这里是一个让 Unison 工作的指南。
在每台 PC 上,您都需要安装openssh-server,以便您可以随时在每台 PC 之间通过 ssh 与 unison 一起使用
sudo apt-get install openssh-server unison unison-gtk
Run Code Online (Sandbox Code Playgroud)
现在打开你的浏览器并下载 Debian 版本的unison-gtk - 32 位 i386 和 64 位 Natty 的 amd64 并安装它 注意 Natty 中的版本有一个严重的 SSH 错误并且不起作用。
cd Downloads
sudo dpkg -i unison-gtk_2.32.52-3+b1_i386.deb
Run Code Online (Sandbox Code Playgroud)
按照上面的 openssh-server 指南在两台计算机之间设置 SSH 链接。以两种方式测试链接以确认您可以看到两台计算机的主目录。
即从台式电脑到 NAT 电脑
ssh -p 6222 localhost
Run Code Online (Sandbox Code Playgroud)
以及从 NAT 电脑到台式电脑
ssh username@desktoppc
Run Code Online (Sandbox Code Playgroud)
现在在您的台式电脑上配置一个统一配置
unison-gtk &
Run Code Online (Sandbox Code Playgroud)
按照这张图片输入你的 gnote 文件夹的完整路径

现在输入 NAT pc gnote 文件夹和套接字号 62222

然后单击 SSH 单选按钮并输入主机名 localhost

您现在可以手动或自动同步文件夹。
要从 NAT pc start 执行相同操作,请unison-gtk按上述配置本地 gnote 文件夹,并按此图片配置桌面 pc 文件夹

虽然这不能直接回答您的问题,但您可能希望将Tomboy作为笔记应用程序查看。它的功能之一是能够通过各种后端同步其笔记集。
同步选项之一是通过Ubuntu One帐户进行同步,这将提供所需的功能,而无需设置任何特殊的服务器软件。
如果您更喜欢使用自己控制的服务器,您可以设置一个Snowy实例,它使用与 Ubuntu One 同步选项相同的协议。或者,如果您可以通过 访问服务器ssh,Tomboy 可以通过SSH Sync Service Add-in.
这是一个基于fossfreedom 的回答,Synchronizing 2 Ubuntu Systems with Unison和Unison manual的解决方案。不同之处在于,我使用命令行版本而不是使用 GUI 来实现 Unison,并且我没有尝试通过 NAT 隧道,而是始终从可能位于 NAT 后面的计算机执行同步命令。
sudo apt-get install openssh-server unisonmkdir ~/.unisonnano default.prf– 创建一个名为 default的配置文件。编写配置文件,例如:
root = /home/user
root = ssh://user@user.dyndns-ip.com//home/user
path = .local/share/gnote
Run Code Online (Sandbox Code Playgroud)通过unison -auto default在可能位于 NAT 后面的计算机上运行来同步计算机。这将同步笔记,如果有冲突,它会询问用户该怎么做。请注意,您应该在同步之前关闭两台计算机上的 Gnote。我在笔记本电脑与台式机离开 LAN 之前和之后都这样做,以保持他们的笔记同步。