Symfony Vagrant共享/同步文件夹权限

Symfony Vagrant共享/同步文件夹权限,symfony,permissions,vagrant,virtualbox,Symfony,Permissions,Vagrant,Virtualbox,根据我的研究,我了解VirtualBox同步文件夹在装载过程中设置了权限。稍后,我无法更改它,因此,对于共享文件夹中的每个文件/文件夹,整个同步文件夹的权限必须相同。当尝试使用或不使用超级用户权限进行更改时,更改会立即恢复 例如,在Symfony PHP框架中,对于不同的文件/文件夹有多个不同的权限,这是如何工作的?(即,应用程序/控制台需要执行权限,但我不希望到处都有7XX) 我在不同但类似的问题()中发现,我可以将Vagrant文件中的所有内容的权限设置为777,但是这并不可取,因为我需要在

根据我的研究,我了解VirtualBox同步文件夹在装载过程中设置了权限。稍后,我无法更改它,因此,对于共享文件夹中的每个文件/文件夹,整个同步文件夹的权限必须相同。当尝试使用或不使用超级用户权限进行更改时,更改会立即恢复

例如,在Symfony PHP框架中,对于不同的文件/文件夹有多个不同的权限,这是如何工作的?(即,应用程序/控制台需要执行权限,但我不希望到处都有7XX)

我在不同但类似的问题()中发现,我可以将Vagrant文件中的所有内容的权限设置为777,但是这并不可取,因为我需要在源代码后面使用GIT,而不是部署到实时环境中。很好地说,在生产中运行777下的所有操作都是不正确的


你们这些人是如何应对的?您的权限设置是什么?

可能的解决方案是使用以及和命令


这样,您将失去双向同步,但您可以管理文件权限和所有权。

现在,当我没有更多经验时,我可以真正回答这个问题

此问题有3种解决方案:

  • 在主机系统中使用Git,因为vagrant安装程序以某种方式强制777(至少在Windows主机上)
  • 使用vagrant中的选项(开箱即用窗口上不可用)
  • 如回答中所述,配置更复杂的rsync(同步速度较慢)

    • 我也处于类似的情况。我开始使用Vagrant装载选项,并发现当我升级我的技术堆栈的部分(内核、Virtualbox、Vagrant、来宾添加)时,我在尝试设置同步文件夹中的权限时开始出现不同的行为

      在某种程度上,我可以很好地更新shell provisioner中的一些权限。起初,这些变化反映在客人和主人身上。在另一个时间点上,它是按照我预期的方式完成的,更改只反映在来宾文件系统中,而不反映在主机文件系统中。在我的主机上更新内核和VB之后,我注意到来宾中的权限更改只反映在主机上


      我试图使用DKMS根据我的内核的旧版本编译VBOX。还不走运。

      我也在研究rsync,但是还有一个问题,文件只以一种方式同步,从主机到任务。这样,我就必须运行每个命令来更新主机上不适合Windows主机的任何内容。除了我可以忍受的双向问题外,RSYNC更改了权限级别。我觉得同步是不可预测的,因为vagrant依赖于主机操作系统、VM和同步提供程序的太多默认值。我从来没有遇到过这些问题,因为Git是在主机上运行的,并且它正确地使用来自主机文件系统的文件权限。你能更具体地描述一下你的设置吗?@Gerry谢谢你,这就是我目前正在做的,似乎是唯一合理的解决方案。我在主机系统(Windows7)上操作Git,在来宾系统(behat、composer等)上实现开发/测试的所有其他功能。