菜单
本页目录

进入 Linux 内核命名空间 (namespaces) 的命令行工具 nsenter

基本用法

nsenter [options] command [command-args]

[options]:指定进入哪个命名空间以及如何进入。
command:在命名空间中运行的命令。
[command-args]:传递给命令的参数。

-t :指定要进入的目标进程的 PID。

例如:-t 1234 表示进入 PID 为 1234 的进程的命名空间。

-n:进入网络命名空间。

例如:-n 表示进入网络命名空间。

-m:进入内存命名空间。

例如:-m 表示进入内存命名空间。

-u:进入用户命名空间。

例如:-u 表示进入用户命名空间。

-i:进入 IPC 命名空间。

例如:-i 表示进入 IPC 命名空间。

-p:进入 PID 命名空间。

例如:-p 表示进入 PID 命名空间。

-U:退出所有命名空间。

例如:-U 表示退出所有命名空间。

-F:进入文件系统命名空间。

例如:-F 表示进入文件系统命名空间。

--all:进入所有命名空间。

例如:--all 表示进入所有命名空间。

示例

进入 PID 为 1234 的进程的网络命名空间,并显示该命名空间中的网络接口信息

nsenter -t 1234 -n sh -c 'ip addr show'

进入 PID 为 1234 的进程的 PID 命名空间,并显示该命名空间中的进程列表

nsenter -t 1234 -p sh -c 'ps aux'

进入 PID 为 1234 的进程的所有命名空间,并显示该命名空间中的主机名

nsenter -t 1234 --all sh -c 'hostname'