1 |
|
nsenter 是 Linux 下的一个命令,可以进入其他进程的命名空间(namespace),比如:
–mount 表示进入挂载命名空间(即文件系统环境)
–pid 表示进入进程空间
–net 表示进入网络空间
等等……
这意味着你可以“变成另一个进程看到的世界”。
/host/proc/1/ns/mnt 是宿主机中 1 号进程的挂载命名空间文件
容器内的 /proc/1/ns/mnt 是容器的命名空间
通常容器里会把宿主机的 /proc 挂载到 /host/proc 下
1 号进程 在宿主机上就是 init 进程,也就是整个系统的根命名空间
bash <<<”…” 是什么意思?
1 | bash <<<"..." |
declare -f
表示把函数定义输出出来:
1 | declare -f func1 func2 ... |
1 | my_func() { |
输出:
1 | my_func() { |
sed “$a __main”
1 | sed "\$a __main" |
在最后加上一行 **main,表示自动调用 **main 函数