资讯专栏INFORMATION COLUMN

nsenter命令使用大全

社区管理员 / 878人阅读

nsenter在不同的命名空间中执行命令

namespace是linux中用于个隔离资源的特性,大名鼎鼎的docker就是基于此,而nsenter就是可以在不用docker exec的情况下进入别的namespace
常用的使用场景是很多容器都很精简,一些命令没有对于调试网络来说很麻烦,这个时候可以只进入改容器的网络命名空间,调试更加方便

安装

一般linux发行版自带,位于util-linux包中

选项说明

-t, –target pid:指定被进入命名空间的目标进程的pid
-m, –mount[=file]:进入mount命令空间。如果指定了file,则进入file的命令空间
-u, –uts[=file]:进入uts命令空间。如果指定了file,则进入file的命令空间
-i, –ipc[=file]:进入ipc命令空间。如果指定了file,则进入file的命令空间
-n, –net[=file]:进入net命令空间。如果指定了file,则进入file的命令空间
-p, –pid[=file]:进入pid命令空间。如果指定了file,则进入file的命令空间
-U, –user[=file]:进入user命令空间。如果指定了file,则进入file的命令空间
-G, –setgid gid:设置运行程序的gid
-S, –setuid uid:设置运行程序的uid
-r, –root[=directory]:设置根目录
-w, –wd[=directory]:设置工作目录

例子
# 获取容器的piddocker inspect alpine -f '{{.State.Pid}}'# 进入pid对应的namespace的ns命名空间,这时可以执行节点的ip addr命令查看对应pid的网络情况sudo nsenter --target $PID --net# 等同于 docker execnsenter --target $PID --mount --uts --ipc --net --pid


文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/127886.html

相关文章

  • 探索runC (下)

    摘要:而不幸的是是多线程的。至此,子进程就从父进程处得到了的配置,继续往下,又创建了两个从注释中了解到,这是为了和它自己的子进程和孙进程进行通信。 回顾 本文接 探索runC(上) 前文讲到,newParentProcess() 根据源自 config.json 的配置,最终生成变量 initProcess ,这个 initProcess 包含的信息主要有 cmd 记录了要执行的可执行...

    gekylin 评论0 收藏0
  • 探索runC (下)

    摘要:而不幸的是是多线程的。至此,子进程就从父进程处得到了的配置,继续往下,又创建了两个从注释中了解到,这是为了和它自己的子进程和孙进程进行通信。 回顾 本文接 探索runC(上) 前文讲到,newParentProcess() 根据源自 config.json 的配置,最终生成变量 initProcess ,这个 initProcess 包含的信息主要有 cmd 记录了要执行的可执行...

    jzman 评论0 收藏0
  • CloudBest:干货 | 手把手带你搞定4大容器网络问题

    摘要:一直以来,网络都是容器中令人头疼的问题。本文的主要目的是带你解决容器网络问题,让你不再对它恐惧。或者,更准确地说,是单主机容器网络问题。与其创建完全隔离的容器,不如将范围限制在网络堆栈中。一直以来,网络都是容器中令人头疼的问题。本文的主要目的是带你解决容器网络问题,让你不再对它恐惧。使用容器总是感觉像变魔术一样。对那些了解其内部原理的人来说,它是一种很好的方式;而对那些不了解其内部原理的人来...

    Tecode 评论0 收藏0
  • docker容器内的网络抓包

    摘要:有两种方式来对容器进行抓包在容器内安装工具来直接抓包使用宿主机上的工具对容器进程抓包。包括文件命名空间主机名命名空间命名空间网络命名空间进程命名空间和用户命名空间。 当docker容器的网络模式不是--net=host(如果启动容器的时候使用host模式,那么这个容器将不会获得一个独立的Network Namespace,而是和宿主机共用一个Network Namespace。容器将不...

    layman 评论0 收藏0
  • nsinit:监控 RHEL/Fedora 上 Docker 的每个容器资源

    摘要:它也给它们带来了内核维护的每个的计数器。管理员期望每个容器的资源计数器也在里面。在的最新版本,工程师已经开始构建并发布一个名为的二进制包,它目前是的一部分,它是的。因此,像这样做这些文件时可读的文本格式,尽管不是人类可读的。 注:该文作者是 Jeremy Eder,原文地址为 nsinit: per-container resource monitoring of Docker ...

    ls0609 评论0 收藏0

发表评论

0条评论

社区管理员

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<