Monte a pasta do host no guest com o LXC 2.x, mas faça somente leitura?

1

NB: Esta questão está diretamente relacionada com este e, em particular, < uma resposta, mas não é uma duplicata.

Gostaria de compartilhar uma pasta do host com o convidado, mas certifique-se de que a raiz do convidado não possa ser gravada acidentalmente nessa pasta.

A pasta no meu caso é /toolchains , no host e no convidado. E contém várias caixas de ferramentas baseadas no GCC usadas para segmentar plataformas diferentes.

Agora, o compartilhamento em si é trivial:

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

Tecnicamente, parece ser uma montagem de ligação. No entanto, dentro do contêiner, uma remontagem para torná-lo somente para leitura falha:

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

Infelizmente, isso não fornece um grande nível de detalhes.

Para uma boa medida, também tentei esta alternativa:

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

que foi mencionado em mount(8) em mount --bind,ro foo foo ...

Quais opções eu tenho para conseguir o que eu quero? Ou seja compartilhe a pasta do host como readonly com o convidado. Devo usar algum tipo de sindicato FS aqui ou é a minha única chance real de obter uma montagem somente leitura para 1.) usar um compartilhamento CIFS ou 2.) usar algum gancho para montar a pasta host através do comando mount do bind? hospedar na raiz guest?

Estou usando o LXC 2.20.

    
por 0xC0000022L 27.11.2017 / 15:42

1 resposta

2

O que acontece se você montar o seu diretório como somente leitura no host e depois compartilhá-lo com o contêiner 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

Tecnicamente, tudo o que é somente leitura no nível do host deve permanecer como somente leitura no contêiner.

    
por 27.11.2017 / 15:59

Tags