流浪者设置默认共享权限


32

运行流浪者实例时,将/vagrant自动安装项目文件夹。但是已安装具有以下权限

# ll -d /vagrant
drwx------ 1 vagrant vagrant 612 Jun 13 14:41 /vagrant/

我需要将它(至少)与0770一起安装,但我找不到方法。如果运行mount命令,我会看到此输出

# mount
v-root on /vagrant type vboxsf (uid=1000,gid=100,rw)

我已经尝试了chmodchown/chgrp,但是它们无法在该安装的文件夹上使用,因此我的apache用户无法访问该文件夹。我在Vagrant手册阅读到可以更改所有者和组的信息,但其中没有提及权限。

我怎样才能做到这一点?

另一个选项可能是切换到NFS,但这种方式在Windows平台上不起作用,并且需要编辑本地/etc/exports文件,并且需要root特权,而且这很烦人,因此我宁愿不要进行此更改。

Answers:


53

在我的Vagantfile中针对v1.3.2和更高版本解决了这一行:

config.vm.synced_folder ".", "/vagrant", :mount_options => ["dmode=777","fmode=666"]

1.2版之前的语法:

config.vm.share_folder("v-root", "/vagrant", ".", :extra => 'dmode=770,fmode=770')

鸣谢:http : //ubuntuforums.org/showthread.php? t= 1434884

对于Vagrant 1.2,正确的语法是:

config.vm.synced_folder ".", "/vagrant", :extra => "dmode=777,fmode=666"

积分:Aal

对于v1.3.2及更高版本,已同步文件夹上的'extra'标志已更改为'mount_options'。选项必须位于数组中,并且每个选项都作为单独的字符串(与之前版本中两个选项都位于单个字符串中相反)


6
Dunno为什么,但是我需要一个稍微不同的语法:config.vm.synced_folder ".", "/vagrant", :extra => "dmode=777,fmode=666"
Paul Voss

1
+1 Aal和+1 Fabio:share_folder是Vagrant v1.2之前的版本,synced_folder是Vagrant v1.2和之后的版本。我使用puphpet.com生成清单,但必须在Vagrantfile中进行此调整。
therobyouknow

2
config.vm.synced_folder“。”,“ / vagrant”,:mount_options => [“ dmode = 777,fmode = 666”]在v1.3.2上为我工作。
Nobu

3
在Vagrant 1.4.3中,语法再次有所不同。对Vagrantfile的以下更改对我有用:config.vm.synced_folder“#{folder ['source']}”,“#{folder ['target']}”“,id:”#{folder ['id']} “,键入:nfs,mount_options:[“ dmode = 777”,“ fmode = 666”]
ChezFre 2014年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.