
我正在 Bunsenlabs Lithium (Debian 10) 下執行 Lubuntu QEMU VM。我正在測試與 NFS 共用資料夾的不同方法。第一個建立的共享正常,但主機拒絕共享第二個資料夾。
=== 截圖 ===
/etc/導出:
/Data/virtualization/KVMShare *(rw,sync,no_root_squash,no_subtree_check)
/Data/share2 *(rw,sync,no_root_squash,no_subtree_check,insecure)
exportfs 和 showmount 都顯示正在匯出資料夾:
pg@TREX:~$ sudo exportfs -rav
exporting *:/Data/share2
exporting *:/Data/virtualization/KVMShare
pg@TREX:~$ sudo showmount -e localhost
Export list for localhost:
/Data/share2 *
/Data/virtualization/KVMShare *
客戶端顯示相同:
pg@PT-Lubu:~$ sudo showmount -e 192.168.122.1
Export list for 192.168.122.1:
/Data/share2 *
/Data/virtualization/KVMShare *
=== 截圖 ===
……這不應該起作用嗎?
pg@PT-Lubu:~$ sudo mount -t nfs4 192.168.122.1:/ share
pg@PT-Lubu:~$ ll -A share
lrwxrwxrwx 1 root root 6 aug 31 18:30 share -> /share/
pg@PT-Lubu:~$ ll -A share/Data
total 8
drwxrwxrwx 2 nobody nogroup 4096 aug 31 19:17 share2/
drwxrwxrwx 6 root root 4096 aug 31 13:38 virtualization/
這是怎麼回事?
編輯
正如下面的@Michael Hampton 善意地幫助我發現了我的理解中的錯誤,我剪掉了不再相關的部分。
我仍然不明白為什麼我能夠在共享子目錄時掛載父目錄。我正在尋找的是這樣的:
- 伺服器正在從 Drive1 資料夾 /Data/Share/Foo1 和 /Data/Share/Foo2 共用
- 客戶端看到並且可以掛載 Server:/Foo1 和 Server:/Foo2
- 用戶端看不到也無法掛載 Server:/Data 或 Server:/Data/Share
- 如果 Drive1 發生故障,我可以簡單地使用相同的共享 ID 啟動 Drive2/Share/Foo1 & 2
- 客戶端仍然只能看到並安裝 Server:/Foo1 & 2
如果有人能指出我正確的方向,我將非常感激。
在提問之前,我已經透過 inertnet 檢查了一些資源,其中一些非常詳細。但是,如果沒有指出這些選項,那麼「使用適當的選項可以實現這一點」之類的句子就沒有幫助。另外,在遵循詳細說明時,還要花 2 個小時試圖找出為什麼事情不起作用,結果卻發現該選項不是所描述的“no_sub_tree_check”,這有點不太高效。