nsenter 进入容器的命名空间

这里写自定义目录标题

  • nsenter 进入容器的命名空间
  • 参考

nsenter 进入容器的命名空间

nsenter 安装
nsenter 位于 util-linux 包中,一般常用的 Linux 发行版都已经默认安装。如果你的系统没有安装,可以使用以下命令进行安装:

$ yum install util-linux

nsenter 用法
首先看下 nsenter 命令的语法:

$ nsenter [options] [program [arguments]]

options:

-a, --all enter all namespaces of the target process by the default /proc/[pid]/ns/* namespace paths.
-m, --mount[=]:进入 mount 命令空间。如果指定了 file,则进入 file 的命名空间
-u, --uts[=]:进入 UTS 命名空间。如果指定了 file,则进入 file 的命名空间
-i, --ipc[=]:进入 System V IPC 命名空间。如果指定了 file,则进入 file 的命名空间
-n, --net[=]:进入 net 命名空间。如果指定了 file,则进入 file 的命名空间
-p, --pid[=:进入 pid 命名空间。如果指定了 file,则进入 file 的命名空间
-U, --user[=:进入 user 命名空间。如果指定了 file,则进入 file 的命名空间
-t, --target  # 指定被进入命名空间的目标进程的 pid
-G, --setgid gid:设置运行程序的 GID
-S, --setuid uid:设置运行程序的 UID
-r, --root[=directory]:设置根目录
-w, --wd[=directory]:设置工作目录

查看docker 容器的pid

$ docker inspect -f {{.State.Pid}} nginx

然后,使用nsenter命令进入该容器的网络命令空间

$ nsenter -n -t6700

#退出命名空间

$ exit

参考

https://zhuanlan.zhihu.com/p/636269015

你可能感兴趣的:(linux,运维,网络)