Sintaxis para configurar LXD Container raw.idmap

Sintaxis para configurar LXD Container raw.idmap

Estoy siguiendo el procedimiento para montar una unidad host dentro de un contenedor lxc como se describeaquí. En dicho artículo el autor establece elraw.idmapcomo esto:

lxc config set zesty raw.idmap 'both 1000 1000'

Quiero personalizar el mapeo para gid y uid como se describe en eldocumentación de mapa de identificación lxd. Que muestra un mapeo de muestra como este:

both 1000 1000
uid 50-60 500-510
gid 10000-110000 10000-20000

Estoy teniendo problemas con la sintaxis para configurar esto, ya que no parece que el comando del primer artículo funcione para configuraciones de varias líneas, y he intentado ingresarlo todo en una sola línea y usando JSON. pero no hubo suerte, ya que el contenedor da errores de configuración y no se inicia.

¿Cuál es la forma correcta de configurar esto?

Respuesta1

Esta pregunta ha sido respondida en elLista de correo de usuarios de LXC:

Como idmapes un blob, si desea asignar varios valores, debe enviar varias líneas. Ejemplo:

echo -en "both 1003 1003\nboth 1004 1004" | lxc config set mycontainer raw.idmap -

Respuesta2

Otra forma de automatizar esto podría ser como se describe aquí (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

Por lo tanto, recuperará su UID y GID actuales y los asignará al UID 1000 y GID 1000 dentro del contenedor. Puede cambiar este valor si está utilizando otro usuario. Además, debe reiniciar su contenedor para que el cambio surta efecto.

información relacionada