【问题标题】:Virtualbox/Vagrant shared folder: case sensitivity issue on OS X and LinuxVirtualbox/Vagrant 共享文件夹:OS X 和 Linux 上的区分大小写问题
【发布时间】:2014-02-04 20:39:24
【问题描述】:

我在 Mac OS X 主机上运行 VirtualBox,并带有 CentOS 来宾。我正在使用 Vagrant 设置一个共享文件夹,这样我就可以在主机和来宾上使用代码。

问题在于主机的文件系统不区分大小写,而客户机的文件系统不区分大小写。所以如果我在客人身上运行一些东西,比如:

cd /shared-folder
mkdir foo
mv foo Foo

它将失败,因为它看到 Foo 已经存在于主机上。这是一个简化的例子,但我有真实的案例,我试图在客户机上使用 git,它最终会做类似的事情。

有什么办法可以避免这种情况吗?我更愿意提出适用于所有主机操作系统(Windows、Mac 和 Linux)的东西。

(一种选择可能是将主机的文件同步到来宾,但我希望避免这种情况。)

【问题讨论】:

  • 如果你确实走 rsync 路线,你也许可以使用 vagrant-sync 插件github.com/cromulus/vagrant-rsync
  • CentOS 文件系统 {ext3,4} 应该区分大小写,OS X 上的 HFS+ 默认不区分大小写,这就是问题所在。您可以尝试使用 NFS 或 sshfs 代替默认的 vboxsf。
  • 它似乎是一个 Virtualbox 共享文件夹功能,以支持主机上的各种底层文件系统,包括那些不区分大小写的文件系统。 virtualbox.org/ticket/437 愚蠢的,imo。狠狠地打了我的脸。使用当前操作系统的人现在会假设事物是区分大小写的。

标签: macos virtualbox vagrant


【解决方案1】:

答案可能有点厚颜无耻,但您可以在任何地方使用小写字母。我相信这会解决你的问题...

正如建议的那样,如果您想走另一条路,rsync 是一个不错的选择,如果您想巧妙地解决某些问题,您可以包含相当广泛的包含/排除列表。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-09-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-05
    • 2017-06-07
    • 2016-03-28
    • 1970-01-01
    相关资源
    最近更新 更多