Vagrant varsayılan paylaşım izinlerini belirledi


32

Bir serseri örneği çalıştırırken proje klasörü /vagrantotomatik olarak monte edilir . Ancak, aşağıdaki izinlerle monte edilir

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

En azından 0770 ile monte edilmesine ihtiyacım var ama nasıl olduğunu bulamıyorum. Mount komutunu çalıştırdığımda bu çıktıyı görüyorum

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

Her ikisini de denedim chmodve chown/chgrpancak bu bağlı klasörde çalışmazlar, böylece apache kullanıcım bu klasöre erişemez. Ben Serseri kılavuzda okumak Sahibini ve grubunu değiştirebilir ancak izin hakkında hiçbir şey söz gelmez.

Bunu nasıl yapabilirim?

Başka bir seçenek NFS'ye geçiş olabilir, ancak bu şekilde Windows platformlarında çalışmaz ve yerel /etc/exportsdosyayı düzenlemesi gerekir ve kök ayrıcalıkları gerektirir ve ayrıca oldukça can sıkıcıdır, bu yüzden bu değişikliği yapmamayı tercih ederim.

Yanıtlar:


53

Vagant dosyamdaki bu satırla v1.3.2 ve sonraki sürümlerinde çözüldü:

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

1.2 sürümünden önceki sözdizimi:

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

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

Vagrant 1.2 için doğru sözdizimi şuydu:

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

Kredi: Aal

V1.3.2 ve sonraki sürümlerde senkronize edilen klasördeki 'extra' bayrağı 'mount_options' olarak değiştirildi. Seçeneklerin, her seçeneğin ayrı bir dize olarak bulunduğu bir dizide olması gerekir (önceki seçeneklerde her iki seçeneğin de tek bir dize olması gibi)


6
Dunno neden, ama biraz farklı bir sözdizimine ihtiyacım var:config.vm.synced_folder ".", "/vagrant", :extra => "dmode=777,fmode=666"
Paul Voss

1
+1 Aal ve +1 Fabio: share_folder Vagrant v1.2 öncesi, synced_folder Vagrant v1.2 ve üstüdür. Puphpet.com sayfasını Manifest'imi oluşturmak için kullanıyorum ancak bu düzenlemeyi Vagrantfile'de yapmak zorunda kaldım.
therobyouknow

2
config.vm.synced_folder ".", "/ vagrant",: mount_options => ["dmode = 777, fmode = 666"] v1.3.2'de benim için çalıştı.
Nobu

3
Vagrant 1.4.3'te, sözdizimi yine biraz farklıdır. Vagrantfile'de yapılan şu değişiklik benim için çalıştı: config.vm.synced_folder "# {folder ['source']}", "# {folder ['target']}", id: "# {folder ['id']} ", şunu yazın: nfs, mount_options: [" dmode = 777 "," fmode = 666 "]
ChezFre
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.