Linuxはマウントネームスペース「共有サブツリー」機能は、プロセス全体のインストールツリーに使用されます。
親/サブインストール名前空間のプロセスを調べると、/proc/$pid/mountinfo
各プロセスのピアグループ関係を確認できます。共有サブツリー.txt。たとえば、外部ネームスペースのマウントに/child
タグを付けることができますshared:538
。unshare -M
サブプロセスは、で作成したサブマウントの名前空間にmaster:538
同じマウントを表示できます。
しかし、時にはこれらのIDが一致しないことがあります。親プロセスの観点からは、子プロセスピアグループIDが存在しないようです。たとえば、私のcontainerd
角度からコンテナマウントアイテムnsenter -t 1 --all
に。しかし、私の観点からは。/proc/1/mountinfo
shared:538
nsenter -t $in_container_pid --all cat /proc/self/mountinfo
master:532
exec
これは、コンテナ環境を設定した後、コンテナ内にコンテナゲストプロセスを設定する中間プロセスによるものです。
これらのマウントグループピアIDを一覧表示し、それをプロセスツリーおよび/またはマウントネームスペースinodeにマッピングする方法はありますか?おそらく、このピアグループ階層はカーネルのどこかに維持されますが、lsns
sysfsやsysfsなどのユーティリティによって公開されるものは見つかりません。