Virtualbox/Vagrant 共享文件夹:在 OS X 和 Linux 上存在大小写敏感问题

7
我正在Mac OS X主机上运行VirtualBox,CentOS客户端。我正在使用Vagrant设置共享文件夹,以便我可以在主机上和客户端上使用代码进行工作。
问题在于主机的文件系统是大小写不敏感的,但客户端的文件系统并非如此。因此,如果我在客户端上运行像以下这样的内容:
cd /shared-folder
mkdir foo
mv foo Foo

它将会失败,因为它发现Foo已经存在于主机上。这是一个简化的例子,但我有真实的情况,在客户机上尝试使用git时,它最终会做类似的事情。
有没有办法避免这种情况?我希望想出一些适用于所有主机操作系统(Windows、Mac和Linux)的解决方案。
(一种选项可能是将主机的文件rsync到客户机,但我希望避免那种方法。)

如果您选择使用rsync,可以考虑使用vagrant-sync插件 https://github.com/cromulus/vagrant-rsync - Jeremy Quinton
2
CentOS文件系统{ext3、4}应该是区分大小写的,而OS X上默认的HFS+不区分大小写,这就是问题所在。您可以尝试使用NFS或sshfs代替默认的vboxsf。 - Terry Wang
1
似乎这是Virtualbox共享文件夹的一个“特性”,支持主机上所有种类的底层文件系统,包括那些不区分大小写的文件系统。https://www.virtualbox.org/ticket/437 在我看来,这很愚蠢。这让我感到非常困扰。现在使用当前操作系统的人们都会认为事情是区分大小写的。 - gertvdijk
1个回答

0
也许这个答案有点儿不正经,但你可以在任何地方都使用小写字母。我相信那会解决你的问题...
如建议所述,如果你想走另一条路,rsync 是一个很好的选择,如果你试图在某些方面微调,你可以包含相当广泛的包括/排除列表。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接