从取消共享中获取不同的 PID

从取消共享中获取不同的 PID

以下是名为 的脚本中的一些基本代码test.sh

bash -c "sleep 10; echo \$(pidof unshare)" &

sudo unshare --mount --uts --ipc --net --pid --fork /bin/sh -c "
... do stuff ...
sleep 60
" &

PID=$!

当我执行脚本时,第一行后台bash命令识别的进程ID和分配给PID的值是不同的。此外,如果您ps在脚本中运行 a,我看不到任何一个进程 ID。我猜我错误地传递了取消共享的代码,以使其全部在后台作为单个进程运行?如何获取新命名空间中后台运行进程的实际PID?

相关内容