Qemu

虛擬化:遵循 VirtFS (9p) 共享中的符號連結

  • October 30, 2015

我在主機上有文件夾,其中包含指向另一台設備的符號連結。像這樣

$ ls -all ~/folder_to_share
...
file1
file2
linked_dir -> /mnt/bdrive/real_dir/
...

我通過libvirtvagrant-libvirt設置 QEMU 虛擬機。並設置共享文件夾,該文件夾~/folder_to_share使用VirtFS9p 協議)映射到主機目錄。

我希望我的虛擬機進入共享目錄並遵循符號連結,因為它是真實目錄。有可能還是我應該切換到另一個協議?

PS vagrant-libvirt配置的一部分:

config.vm.synced_folder "~/folder_to_share/", "/home/vagrant/shared_folder", type: '9p', owner: 1000

我很久以前就用綁定安裝解決了這個問題。您可以刪除符號連結並將其替換為綁定安裝:

mkdir /symlink/to/replace mount -o bind /src/dir /symlink/to/replace

但是當我嘗試它時,我看到“diod” 9p 伺服器無條件地跳過了綁定安裝。所以我不得不修補它。

注意:Plan9 和它的相鄰項目通常會抗議許多“不良做法”,例如動態連結或符號連結。他們不支持這些可能是正常的,即使在其他環境中也是如此。因此,如果您有一個充滿指向其他地方的符號連結的目錄,您最終將修補 9p 伺服器軟體。

引用自:https://unix.stackexchange.com/questions/239571