1. 程式人生 > >Vagrant 配置共享目錄

Vagrant 配置共享目錄

有時候, 我們希望多臺虛擬機器使用相同的資料夾, 比如說我們配置負載的web伺服器, 那麼多個虛擬機器裡面的站點必須一致, 或者web伺服器的配置檔案要一致, 這個時候我們需要在本地配置一個共享目錄

本地建立共享目錄

# 進入我們建立好Vagrant工作目錄
cd vagrant_home
# 建立共享資料夾
mkdir share_dir
# 隨便新增一點內容
echo 'Hello Vagrant' > README.MD

Vagrant配置檔案

下面是我master主機配置的共享目錄

config.vm.define "master" do |device|
  device.vm.network "private_network", ip: "192.168.3.100"
  device.vm.hostname = "master"
  device.vm.provider "virtualbox" do |vb|
    vb.memory = "2048"
    vb.cpus = 2
    vb.name = "master"
  end
  device.vm.synced_folder "./share_dir", "/vagrant", create: true, owner: "root", group: "root", mount_options: ["dmode=755","fmode=644"], type: "rsync"
end

相關引數介紹

device.vm.synced_folder  
  "./share_dir", # 配置本地共享目錄
  "/vagrant",    # 配置虛擬機器對應的掛載目錄
  create: true,  # 如果虛擬機器上對應的資料夾不存在, 則建立
  owner: "root", # 指定目錄的所有者
  group: "root", # 指定目錄的所屬組
  mount_options: ["dmode=755", "fmode=644"], # 指定資料夾許可權和檔案許可權
  type: "rsync"  # 指定檔案同步方式, 一般讓系統選擇, 不指定

檢視目錄共享情況

修改了配置檔案, 我們需要重啟虛擬機器

vagrant reload master

登入到虛擬機器檢視

vagrant ssh master
ls -al /vagrant

可以看到share_dir被掛載到/vagrant目錄下


Vagrant掛載目錄失敗mount: unknown filesystem type ‘vboxsf’

參考以下連結