Lxc

使用 LXC 2.x 將主機文件夾掛載到來賓,但它是只讀的嗎?

  • November 27, 2017

**注意:**這個問題與這個問題直接相關特別是與這個答案有關,但它不是重複的。

我想與來賓共享來自主機的文件夾,但請確保來賓的根目錄不會意外寫入該文件夾。

在我的情況下,文件夾在/toolchains主機和來賓上都是 。它包含許多用於針對不同平台的基於 GCC 的工具鏈。

現在共享本身是微不足道的:

lxc config device add CONTAINER toolchains disk source=/toolchains path=toolchains

從技術上講,它似乎是一個綁定安裝。但是,在容器內重新安裝以使其只讀失敗:

# mount -o remount,ro /toolchains
mount: cannot mount /dev/sda1 read-only

不幸的是,這並沒有提供很多細節。

為了更好地衡量,我還嘗試了這種替代方法:

# mount -o remount,ro,bind /toolchains
mount: cannot mount /dev/sda1 read-only

mount(8)下面提到mount --bind,ro foo foo

我有什麼選擇來實現我想要的?即與來賓共享主機文件夾為只讀。我應該在這裡使用某種聯合 FS 還是我唯一真正的機會獲得只讀掛載到 1.) 使用 CIFS 共享或 2.) 使用一些掛鉤通過主機的mount命令將主機文件夾綁定掛載到訪客根?

我正在使用 LXC 2.20。

如果你在主機上以只讀方式綁定掛載你的目錄,然後與 LXC 容器共享它會發生什麼?

mount --bind /toolchains /toolchains-ro
mount -o remount,ro,bind /toolchains-ro
lxc config device add CONTAINER toolchains disk source=/toolchains-ro path=toolchains

從技術上講,在主機級別上只讀的所有內容都應該在容器中保持只讀狀態。

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