permissions - 应用程序无法使用 Vagrant 创建可写文件夹

标签 permissions vagrant file-permissions

我从 Vagrant 的 Official Precise64 box 配置了我自己的基本 Vagrant Box。我有一个同步文件夹位于“/var/www”,公共(public)文件夹位于“/var/www/public”。

对于“/var/www”,我的权限是:

drwxr-xr-x  1 vagrant vagrant 

对于“/var/www/public”,我的权限是:
drwxr-xr-x  1 vagrant vagrant

为了说明我的问题,对于 WordPress 应用程序,我手动将上传权限设置为 777。WordPress 能够在当月的上传内容中创建一个文件夹,例如“/var/www/public/wp-content/uploads/10/";但是,它无法上传或写入刚刚创建的文件夹,除非我再次手动将新创建的“10”文件夹的权限更改为可写。

所有应用程序都会发生这种情况,例如 Laravel 的“存储”文件夹,并且基本上任何时候程序尝试创建目录。尝试在配置期间强制设置 Vagrant Up 的权限也不起作用:
config.vm.synced_folder "/path/to/writable/folder", "/path/to/writable/folder", :mount_options => ["dmode=777","fmode=666"]

那么,我需要在虚拟服务器上设置哪些权限才能使其正常工作?

最佳答案

我在 Vagrant 中使用了 WordPress 和 Laravel,并在 Vagrantfile 中设置了写权限:
config.vm.synced_folder ".", "/vagrant", :mount_options => ['dmode=774','fmode=775']
并将默认 Apache 用户添加到 vagrant组(我使用外壳配置):
usermod -a -G vagrant www-data

关于permissions - 应用程序无法使用 Vagrant 创建可写文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26373744/

相关文章:

java - 寻找不需要权限即可请求的唯一设备 ID

windows - 无法在 C :\ProgramData\even after granting Users group full permission 中创建文件

jenkins - Jenkins windows 服务需要管理员权限吗?

ubuntu - 在主机启动时启动 Vagrant VM

vagrant - 一个加壳器构建器可以依赖另一个构建器吗?

asp.net - AjaxFileUpload文件不继承文件夹权限

php - 如何使用 ACL 根据某个用户的权限(例如 EDIT)过滤域对象列表?

php - 使用 Intellij PHP 远程解释器 + vagrant 找不到 VBoxManage

linux - 为什么 Dropbox 导致 PostgreSQL 权限被拒绝错误?

java - 如何使用java在程序文件中移动文件?