Host-Ordner mit LXC 2.x in Gast einbinden, aber schreibgeschützt?

Host-Ordner mit LXC 2.x in Gast einbinden, aber schreibgeschützt?

Hinweis:Diese Frage bezieht sich direkt aufDieses hierund insbesonderediese Antwort, aber es ist kein Duplikat.

Ich möchte einen Ordner vom Host mit dem Gast teilen, aber sicherstellen, dass das Stammverzeichnis des Gasts nicht versehentlich in diesen Ordner schreiben kann.

Der Ordner ist in meinem Fall /toolchains, sowohl auf dem Host als auch auf dem Gast. Und er enthält eine Reihe von GCC-basierten Toolchains, die zum Ansprechen verschiedener Plattformen verwendet werden.

Nun ist das Teilen selbst trivial:

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

Technisch scheint es sich um ein Bind-Mount zu handeln. Innerhalb des Containers schlägt jedoch ein erneutes Mounten, um es schreibgeschützt zu machen, fehl:

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

Leider ist der Detailgrad nicht besonders hoch.

Sicherheitshalber habe ich auch diese Alternative ausprobiert:

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

mount(8)das unter mount --bind,ro foo foo... erwähnt wurde .

Welche Möglichkeiten habe ich, um das zu erreichen, was ich will? D. h. den Host-Ordner schreibgeschützt für den Gast freigeben. Sollte ich hier eine Art Union FS verwenden oder ist meine einzige echte Chance, eine schreibgeschützte Einbindung zu erreichen, 1.) eine CIFS-Freigabe zu verwenden oder 2.) einen Hook zu verwenden, um den Host-Ordner über den mountBefehl vom Host in das Stammverzeichnis des Gasts zu binden?

Ich verwende LXC 2.20.

Antwort1

Was passiert, wenn Sie Ihr Verzeichnis schreibgeschützt auf dem Host mounten und es dann mit dem LXC-Container teilen?

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

Technisch gesehen sollte alles, was auf Hostebene schreibgeschützt ist, auch im Container schreibgeschützt bleiben.

verwandte Informationen