Часник встановив дозволи на часткове використання


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)

Я спробував chmodі те chown/chgrp, і вони не працюватимуть у встановленій папці, тому мій користувач apache не може отримати доступ до цієї папки. У посібнику з Vagrant я прочитав, що можу змінити власника та групу, але про дозвіл нічого не згадується.

Як я можу це зробити?

Іншим варіантом може бути перехід на NFS, але таким чином він не працюватиме на платформах Windows, і йому потрібно буде редагувати локальний /etc/exportsфайл, і це вимагатиме кореневих привілеїв, а також це дуже дратує, тому я вважаю за краще не змінювати цю зміну.

Відповіді:


53

Вирішено за допомогою цього рядка в моєму Vagantfile, для версії 1.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"

Кредити: Аал

Для версії 1.3.2 та пізніше прапор 'extra' у синхронізованій папці було змінено на 'mount_options'. Параметри повинні бути в масиві з кожним параметром як окремий рядок (на відміну від того, що обидва варіанти знаходяться в одній рядку в попередніх версіях)


6
Не знаю чому, але мені потрібен трохи інший синтаксис:config.vm.synced_folder ".", "/vagrant", :extra => "dmode=777,fmode=666"
Пол Восс

1
+1 Aal і +1 Fabio: папка share_folde є попередньою Vagrant v1.2, синхронізована папка - Vagrant v1.2 та після. Я використовую puphpet.com для створення свого Маніфесту, але мені довелося виконати це коригування у Vagrantfile.
therobyouknow

2
config.vm.synced_folder ".", "/ vagrant",: mount_options => ["dmode = 777, fmode = 666"] працював для мене на v1.3.2.
Нобу

3
У Vagrant 1.4.3 синтаксис знову трохи відрізняється. Наступна зміна для Vagrantfile працювала для мене: config.vm.synced_folder "# {папка ['джерело"]} "," # {папка [' ціль ']} ", id:" # {папка [' ідентифікатор "]} ", type: nfs, mount_options: [" dmode = 777 "," fmode = 666 "]
ChezFre
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.