Vagrant 同步文件夹权限

标签 vagrant virtualbox vagrantfile

我已经在 Vagrant 中设置了一个同步文件夹,从我的 Windows 主机到 guest 。最初对文件的权限太开放,所以我添加了以下挂载选项:

config.vm.synced_folder "../my-folder", "/home/vagrant/my-folder",
    mount_options: ["dmode=775,fmode=664"]

但是,我需要为此文件夹中的单个文件添加执行权限。 chmod +x file没有效果。有没有办法允许共享文件夹中的单个项目可执行/对文件夹中的其余项目具有不同的权限?

最佳答案

最后,我想出了两个解决方案:

1)接受所有可执行文件

config.vm.synced_folder "../my-folder", "/home/vagrant/my-folder",
    mount_options: ["dmode=775,fmode=777"]

2)使用rsync方法同步文件夹
config.vm.synced_folder "../ansible-provision", "/home/vagrant/ansible", type: "rsync",
    rsync__exclude: ".git/"

每种方法都有其自身的缺点,但第一种方法实现最快并且对我的用例来说是可以接受的,所以我采用了它。

关于Vagrant 同步文件夹权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35807568/

相关文章:

mysql - 错误 2002 (HY000) : Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) in Vagrant

azure - 将 Vagrant Azure 插件的 Add-Role 设置为 true

vagrant - 带有插件的自定义 Vagrant 命令

php - RuntimeException 供应商不存在且无法创建

android - Genymotion模拟器没有互联网连接

ios-simulator - VirtualBox macOS Catalina Springboard 意外退出

laravel - : failed to create symbolic link: Protocol error (in Vagrant)

virtualbox - 做 vagrant up 时出错

ssh - 在我的 VM 中我的 vagrant 根文件夹中看不到任何文件或文件夹