As instruções em https://wiki.gentoo.org/wiki/LXD mencionadas estão corretas, mas podem precisar de mais explicações.
No host, você primeiro verifica a propriedade do diretório em que os dados do contêiner estão armazenados. Corre
sudo ls -l /var/lib/lxd/containers
e verifique o proprietário do contêiner com o qual você deseja compartilhar o diretório. No meu caso, o uid
e gid
ambos eram 100000.
Em seguida, use-os para alterar a propriedade do diretório que você deseja compartilhar:
sudo chown 100000:100000 /tmp/share_on_host
Compartilhe o diretório com o contêiner da maneira que você indicou em seu comentário:
lxc config device add mycontainer sharedtmp disk \
path=/tmp/share_on_guest source=/tmp/share_on_host
Agora, no contêiner, você verá que o diretório /tmp/share_on_guest
(eu não aconselho a montar seu diretório /tmp
porque é usado pelo sistema para outras coisas e tem permissões especiais) pertence ao root. A partir daqui, você pode usar chown
no contêiner para alterar a propriedade para o apropriado uid
e gid
para o usuário no contêiner.
Como observação lateral, depois de alterar a propriedade do contêiner para, por exemplo, um usuário com uid
33 anos, você verá no host que uid
agora existe 100033, o que faz total sentido.
lxc config device add confexample sharedtmp disk path=/tmp source=/tmp/shared
. Mas, olhando para o diretório no contêiner, o proprietário e o grupo dos arquivos estão configurados para 'ninguém' e 'nogroup' e a montagem é somente leitura.