Vagrant đặt quyền chia sẻ mặc định


32

Khi chạy một cá thể mơ hồ, thư mục dự án được gắn /vagranttự động. Tuy nhiên được gắn với các quyền sau

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

Tôi cần nó để được gắn với (ít nhất) 0770 nhưng tôi không thể tìm thấy làm thế nào. Nếu tôi chạy lệnh mount tôi thấy đầu ra này

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

Tôi đã thử cả hai chmodchown/chgrp, nhưng chúng sẽ không hoạt động trên thư mục được gắn kết đó để người dùng apache của tôi không thể truy cập vào thư mục đó. Tôi đã đọc trong sổ tay Vagrant rằng tôi có thể thay đổi chủ sở hữu và nhóm nhưng nó không đề cập gì đến sự cho phép.

Làm thế nào tôi có thể làm điều đó?

Một tùy chọn khác có thể được chuyển sang NFS nhưng theo cách này nó sẽ không hoạt động trên nền tảng Windows và nó cần chỉnh sửa /etc/exportstệp cục bộ và nó sẽ yêu cầu quyền root và cũng khá phiền phức, vì vậy tôi không muốn thay đổi điều này.

Câu trả lời:


53

Đã giải quyết với dòng này trong Vagantfile của tôi, cho v1.3.2 trở lên:

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

Cú pháp trước phiên bản 1.2:

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

Tín dụng: http://ubuntuforums.org/showthread.php?t=1434884

Đối với Vagrant 1.2, cú pháp đúng là:

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

Tín dụng: Aal

Đối với v1.3.2 và sau đó, cờ 'thêm' trên thư mục được đồng bộ hóa đã được thay đổi thành 'mount_options'. Các tùy chọn cần phải nằm trong một mảng với mỗi tùy chọn là một chuỗi riêng biệt (trái ngược với cả hai tùy chọn nằm trong một chuỗi trong các phiên bản trước)


6
Không biết tại sao, nhưng tôi cần một cú pháp hơi khác:config.vm.synced_folder ".", "/vagrant", :extra => "dmode=777,fmode=666"
Paul Voss

1
+1 Aal và +1 Fabio: share_folder là trước Vagrant v1.2, synced_folder là Vagrant v1.2 và sau đó. Tôi sử dụng Puphpet.com để tạo Bản kê khai của mình nhưng phải thực hiện điều chỉnh này trong Vagrantfile.
trị liệu

2
config.vm.synced_folder ".", "/ vagrant" ,: mount_options => ["dmode = 777, fmode = 666"] đã làm việc cho tôi trên v1.3.2.
Nobu

3
Trong Vagrant 1.4.3, cú pháp lại khác một chút. Thay đổi sau đây đối với Vagrantfile đã có hiệu quả đối với tôi: config.vm.synced_folder "# {thư mục ['source']}", "# {thư mục ['target']}", id: "# {thư mục ['id']} ", loại: nfs, mount_options: [" dmode = 777 "," fmode = 666 "]
ChezFre
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.