![Sintaxe para configurar o contêiner LXD raw.idmap](https://rvso.com/image/1520729/Sintaxe%20para%20configurar%20o%20cont%C3%AAiner%20LXD%20raw.idmap.png)
Estou seguindo o procedimento para montar uma unidade host dentro de um contêiner lxc conforme descritoaqui. Nesse artigo o autor define oraw.idmapassim:
lxc config set zesty raw.idmap 'both 1000 1000'
Quero personalizar o mapeamento para gid e uid conforme descrito nodocumentação do lxd idmap. Que mostra um mapeamento de amostra como este:
both 1000 1000
uid 50-60 500-510
gid 10000-110000 10000-20000
Estou lutando com a sintaxe para realmente definir isso, pois não parece que o comando no primeiro artigo funcione para configurações de várias linhas, e tentei inserir tudo em uma única linha e usando JSON, mas sem sorte, pois o contêiner apresenta erros de configuração e não inicia.
Qual é a maneira correta de configurar isso?
Responder1
Esta pergunta foi respondida noLista de discussão de usuários LXC:
Assim idmap
como um blob, se você quiser atribuir vários valores, será necessário enviar multilinhas. Exemplo:
echo -en "both 1003 1003\nboth 1004 1004" | lxc config set mycontainer raw.idmap -
Responder2
Outra maneira de automatizar isso poderia ser descrita aqui (https://ubuntu.com/blog/custom-user-mappings-in-lxd-containers):
printf "uid $(id -u) 1000\ngid $(id -g) 1000" | lxc config set your_container raw.idmap -
lxc restart your_container
Assim, ele recuperará seu UID e GID atuais e os mapeará para o UID 1000 e GID 1000 dentro do contêiner. Você pode alterar esse valor se estiver usando outro usuário. Além disso, você precisa reiniciar seu contêiner para que a alteração tenha efeito.