![LXD コンテナの raw.idmap を設定するための構文](https://rvso.com/image/1520729/LXD%20%E3%82%B3%E3%83%B3%E3%83%86%E3%83%8A%E3%81%AE%20raw.idmap%20%E3%82%92%E8%A8%AD%E5%AE%9A%E3%81%99%E3%82%8B%E3%81%9F%E3%82%81%E3%81%AE%E6%A7%8B%E6%96%87.png)
私は説明されているようにlxcコンテナ内にホストドライブをマウントする手順に従いますここその記事では、著者は生の.idmapこのような:
lxc config set zesty raw.idmap 'both 1000 1000'
gidとuidのマッピングを、lxd idmap ドキュメントサンプルのマッピングは次のようになります。
both 1000 1000
uid 50-60 500-510
gid 10000-110000 10000-20000
実際に設定する構文に苦労しています。最初の記事のコマンドは複数行の構成では機能しないようです。すべてを 1 行に入力したり、JSON を使用して入力したりしてみましたが、コンテナーで構成エラーが発生し、起動しないため、うまくいきませんでした。
これを設定する正しい方法は何ですか?
答え1
この質問に対する回答はLXC ユーザーメーリングリスト:
idmap
BLOB と同様に、複数の値を割り当てる場合は、複数行を送信する必要があります。例:
echo -en "both 1003 1003\nboth 1004 1004" | lxc config set mycontainer raw.idmap -
答え2
これを自動化する別の方法は、ここで説明されているとおりです(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
したがって、現在の UID と GID が取得され、コンテナ内の UID 1000 と GID 1000 にマップされます。別のユーザーを使用している場合は、この値を変更できます。また、変更を有効にするには、コンテナを再起動する必要があります。