【发布时间】:2018-12-19 19:52:26
【问题描述】:
PID 命名空间内的行为
从 Linux 3.4 开始,如果从 PID 命名空间 other
调用 reboot() 比具有列出的 cmd 值之一的初始 PID 命名空间
下面,它执行该命名空间的“重启”:“init”进程
PID命名空间的立即终止,效果
在 pid_namespaces(7) 中描述。调用reboot()时可以在cmd中提供的值 本案例如下:
LINUX_REBOOT_CMD_RESTART、LINUX_REBOOT_CMD_RESTART2 “init”进程终止,并在父进程中等待(2) 进程报告孩子被 SIGHUP 杀死 信号。
LINUX_REBOOT_CMD_POWER_OFF、LINUX_REBOOT_CMD_HALT “init”进程终止,并在父进程中等待(2) 进程报告孩子被 SIGINT 杀死 信号。
对于其他 cmd 值,reboot() 返回 -1 并且 errno 设置为
EINVAL。
在阅读its manpage 后,我对 PID 命名空间的了解有限。我想知道如何调用 reboot()
- 来自初始 PID 命名空间以外的 PID 命名空间,并且
- 来自初始 PID 命名空间?
【问题讨论】: