Próximo: , Anterior: , Acima: Livro de receitas do GNU Guix   [Conteúdo][Índice]


4 Contêineres

O kernel Linux fornece uma série de facilidades compartilhadas que estão disponíveis para processos no sistema. Essas facilidades incluem uma visão compartilhada no sistema de arquivos, outros processos, dispositivos de rede, identidades de usuários e grupos e alguns outros. Desde o Linux 3.19, um usuário pode escolher unshare algumas dessas facilidades compartilhadas para processos selecionados, fornecendo a eles (e seus processos filhos) uma visão diferente do sistema.

Um processo com um namespace mount não compartilhado, por exemplo, tem sua própria visão no sistema de arquivos — ele só poderá ver diretórios que foram explicitamente vinculados em seu namespace mount. Um processo com seu próprio namespace proc se considerará o único processo em execução no sistema, executando como PID 1.

O Guix usa esses recursos do kernel para fornecer ambientes totalmente isolados e até mesmo contêineres Guix System completos, máquinas virtuais leves que compartilham o kernel do sistema host. Esse recurso é especialmente útil ao usar o Guix em uma distribuição estrangeira para evitar interferência de bibliotecas estrangeiras ou arquivos de configuração que estão disponíveis em todo o sistema.