Como compartilhar um diretório entre chroots

3

Eu tenho vários chroots com diferentes conjuntos de versões de software como uma alternativa leve às VMs.

Como posso compartilhar um diretório nas VMs? Naturalmente, os links simbólicos não permitem escapar de um chroot. Claro, eu poderia montar um compartilhamento de rede (via nfs ou assim) em cada chroot, mas isso imporia uma sobrecarga significativa e considerações de segurança, não é?

    
por phihag 01.11.2011 / 22:42

1 resposta

5

No Linux - vincular montagens .

mount --bind /orig /vm/one
mount --bind /orig /vm/two
mount --rbind /media /vm/one/media

O compartilhamento de /proc e /dev é o uso mais comum para isso (mas certifique-se de usar --rbind para / dev). Você pode até adicionar -o ro para somente leitura.

Para tornar as montagens persistentes, atualize /etc/fstab :

/orig   /vm/one     none    bind
/orig   /vm/two     none    bind,ro

Depois de começar a usar montagens de associação para VMs, você logo se encontrará em espaços para nome e contêineres. (Por exemplo, você pode ter um chroot com uma rede isolada, com apenas um único comando ...) Dê uma olhada no lxc , que usa recursos nativos do Linux para criar sistemas virtuais.

    
por 01.11.2011 / 22:48

Tags