Contêiner não privilegiado do LXC: o apt-get não faz o download de nada dentro

0

Estou executando o Ubuntu Xenial e configure um contêiner de usuários simples e sem privilégios a partir do modelo (também Xenial).

Quando eu participo de dentro e tento apenas atualizar ou instalar qualquer coisa, o 'apt-get' falha com as seguintes mensagens:

root@c1:/# apt-get update
E: setgroups 65534 failed - setgroups (22: Invalid argument)
E: setegid 65534 failed - setegid (22: Invalid argument)
Reading package lists... Done
E: setgroups 65534 failed - setgroups (22: Invalid argument)
E: setegid 65534 failed - setegid (22: Invalid argument)
E: Method gave invalid 400 URI Failure message: Failed to setgroups - setgroups (22: Invalid argument)
E: Method gave invalid 400 URI Failure message: Failed to setgroups - setgroups (22: Invalid argument)
E: Method http has died unexpectedly!
E: Sub-process http returned an error code (112)
E: Method http has died unexpectedly!
E: Sub-process http returned an error code (112)

Então a questão é - o que está acontecendo aqui?

    
por dilettant 08.04.2016 / 21:05

1 resposta

1

Por padrão, o usuário '_apt' possui uid = 65534, mas lxc (e host) é configurado para permitir apenas 10000 subuids e subgids para o usuário (e, portanto, contêineres sem privilégios).

Uma solução pode ser definir o usuário '_apt' uid dentro do contêiner abaixo de 10000.

A outra maneira é aumentar o limite de sub-unidades / subgides no host. Use o comando sudo usermod --add-subuids 260000-325536 --add-subgids 260000-325536 $USER para o usuário que possui o contêiner e assegure-se de que os contêineres do usuário lxc estejam configurados com:

lxc.id_map = u 0 260000 65536
lxc.id_map = g 0 260000 65536
    
por dilettant 26.05.2016 / 17:48