LXC está retornando um erro ao criar novos contêineres não privilegiados

2

Eu recentemente migrei para um novo servidor (Ubuntu 14.04, dedicado, não virtual) e instalei o LXC 1.1.2. Eu tinha LXC configurado no meu servidor anterior, sem qualquer problema, mas no novo servidor estou constantemente correndo em um problema com a criação de novos contêineres unprivileged (assim como não é capaz de iniciar os contêineres migrados). Com uma conta de usuário recém-criada, recebo consistentemente o seguinte erro:

unshare: Operation not permitted
read pipe: Permission denied
lxc-create: lxccontainer.c: do_create_container_dir: 778 Failed to chown container dir
lxc-create: lxc_create.c: main: 274 Error creating container container-template-ubuntu-14.04-7

Eu segui algumas das instruções aqui: link e cutucou em /proc/sys/kernel/ , mas isso não parece ter ajudado. Não tenho certeza do que mais posso tentar.

    
por Kevin Teljeur 30.07.2015 / 19:00

2 respostas

2

O motivo pelo qual não estava funcionando acabou sendo o kernel que foi fornecido com o build do Ubuntu instalado pelo provedor de hospedagem (SoYouStart / OVH). Este kernel tem menos recursos ativados, incluindo os requeridos pelo LXC. Eu tinha instalado um kernel genérico do Linux, mas não atualizei corretamente o grub e o habilitei.

Depois de seguir as etapas para selecionar o kernel genérico e atualizar o grub e reinicializar, o LXC funcionou como esperado. Espero que isso ajude alguém em uma situação semelhante.

    
por Kevin Teljeur 30.07.2015 / 19:07
0

Eu tive o mesmo problema com o Debian 9 e este tópico sempre esteve no topo dos resultados do duckduckgo, então eu aplico para dar uma solução sobre um problema do Debian no askubuntu, mas isso pode ajudar os usuários do Ubuntu:

Depois de instalar o LXC ( apt install lxc ), basta verificar o resultado deste comando:

# cat /proc/sys/kernel/unprivileged_userns_clone

Se for 0 , talvez seja necessário fazer isso:

# echo "kernel.unprivileged_userns_clone=1" > /etc/sysctl.d/80-lxc-userns.conf
# sysctl --system

Ele viu esse "truque" na página do LXC do wiki do Debian e funcionou para mim.

Observação: se isso não resolver o problema, basta remover /etc/sysctl.d/80-lxc-userns.conf e executar sysctl --system novamente para cancelar essa alteração.

    
por Charles-Édouard Coste 21.01.2018 / 01:15