簡體   English   中英

流浪漢同步文件夾導致內容被刪除

[英]Vagrant synced folder causes contents to be erased

我正在嘗試添加除默認/vagrant之外的其他同步文件夾。

我已經閱讀說明這應該很簡單的文檔

config.vm.synced_folder "/path/to/somewhere/on/host", "/path/to/guest_directory", create: true

當我將其添加到Vagrantfile中並重新配置時, guest_directory文件夾將顯示在主機上的預期位置,但為空。 在客戶機操作系統的文件夾也為空...打破我的網站,因為這些都是網站的文件。 有趣的是,如果我從Vagrantfile中刪除了該文件並再次進行了重新配置,則文件將重新出現在其原始操作系統中。

Vagrantfile

# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure(2) do |config|

  config.vm.box = "ubuntu/xenial64"
  config.vm.network "private_network", ip: "192.168.33.99"

  # NEITHER OF THESE WORK...
  # config.vm.synced_folder "/Users/ESL/Sites/project/web__public_web", "/home/vagrant/web__public_web", create: true
  # config.vm.synced_folder "./web__public_web", "/home/vagrant/web__public_web", type: "rsync", rsync__args: ["--verbose", "--archive", "--delete", "-z"], create: true

  config.vm.provider "virtualbox" do |vb|
    vb.memory = "2046"
  end

end

您可以看到我嘗試了兩種不同的type: options,並且兩者都得到了相同的錯誤結果。 我還嘗試將符號鏈接放置到/vagrant/的項目文件,但這也不起作用。 (損壞的符號鏈接顯示在主機os目錄中,而不是我要訪問的文件中)

如果有關的話,以下是有關我的設置的更多詳細信息:

  • 在來賓操作系統中,項目文件位於/ home / vagrant / web__public_web中,但文檔根目錄為/ srv / www / ...,其中包含指向以前路徑的符號鏈接。
  • VirtualBox:版本5.2.18 r124319(Qt5.6.3)
  • 無業游民:v2.1.0
  • OSX:10.13.6

我究竟做錯了什么?

每個安裝都需要一個唯一的ID,如果該盒子已經被制造出來,則需要對其進行重建。

# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure(2) do |config|

  config.vm.box = "ubuntu/xenial64"
  config.vm.network "private_network", ip: "192.168.33.99"

  config.vm.synced_folder "/Users/ESL/Sites/project/web__public_web", "/path/where/mounted/on/vm", id: "unique_id_1", type: "rsync", rsync__args: ["--verbose", "--archive", "--delete", "-z"], create: true
  config.vm.synced_folder "/home/vagrant/web__public_web", "/path/where/mounted/on/vm2", id: "unique_id_2", type: "rsync", rsync__args: ["--verbose", "--archive", "--delete", "-z"], create: true

  config.vm.provider "virtualbox" do |vb|
    vb.memory = "2046"
  end

end

我回答了我自己的問題...

事實證明,同步一直在起作用。 但是我誤解了同步的方向性。 我期望來賓操作系統中的文件顯示在主機目錄中,但這是相反的。 主機目錄上的空文件夾已同步到來賓,並清除了所有文件。

手動將所有文件從guest虛擬機復制到主機目錄后,相同的配置按預期工作。

底線:如果要同步現有來賓文件夾及其中的文件,則必須首先手動將其移動到主機OS上的適當位置。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM