在虚拟机和主机之间同步文件夹

在虚拟机和主机之间同步文件夹

我的代码在主机上,我想让它在 Debian 虚拟机(托管在同一台主机上)上运行。

因此,我使用 VmWare 的共享文件夹在虚拟机中共享我的代码。但我的程序比代码实际位于虚拟机硬盘上时运行得慢。(可能是因为文件系统不同(hgfs vs ext4))

我看到两种可能的解决方案:

  • 将共享文件夹同步到虚拟机上的另一个文件夹。这样就不会有网络访问。但我不知道应该使用哪种工具。可能是像恒定单向 rsync 这样的工具,它也会删除文件。

  • 使用某种“链接”,例如符号链接或物理链接来复制文件夹,但我不知道是否存在这样的事情。

你会怎样做?

(当然,如果我将代码放在虚拟机上并与 Samba 共享,问题是一样的,使用我的 IDE 访问文件的速度会更慢)

答案1

rsync 是个好主意,但是你必须始终在同一台主机上进行更改,rsync 将从该主机获取源。你需要一些基本的 bash 脚本,这些脚本会循环运行 rsync,并带有--delete从目标中删除源中不存在的文件的选项。在screen启动期间运行该脚本,一切就绪了

另一个想法是使用某种云同步,例如 Dropbox,或者使用您自己的 owncloud/nextcloud 服务器来执行此操作。

如果你尝试同步的确实是代码,那么恰当的行业标准是使用 git 存储库,您可以在https://bitbucket.org并设置两台机器使用它,然后在需要时提交/拉取更改。

相关内容